From 2d79a4aef2177f4f07d3265287b3e5b0583449a6 Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Fri, 9 Feb 2018 21:42:23 +0100 Subject: [PATCH] cleaned old files; added basic spring project --- .gitignore | 2 + .project | 23 - BudgetMasterClient/.classpath | 36 - BudgetMasterClient/.project | 23 - .../.settings/org.eclipse.jdt.core.prefs | 5 - .../.settings/org.eclipse.m2e.core.prefs | 4 - BudgetMasterClient/pom.xml | 111 --- .../budgetmasterclient/main/Main.java | 62 -- .../budgetmasterclient/ui/Refreshable.java | 6 - .../budgetmasterclient/ui/RestartHandler.java | 78 -- .../ui/ShutdownHandler.java | 49 - .../budgetmasterclient/ui/Styleable.java | 6 - .../ui/cells/ButtonCategoryCell.java | 54 -- .../ui/cells/CategoryBudgetCell.java | 87 -- .../ui/cells/CategoryCell.java | 116 --- .../ui/cells/LanguageCell.java | 63 -- .../ui/cells/PaymentCell.java | 286 ------ .../ui/cells/RepeatingDayCell.java | 21 - .../ui/cells/SearchCell.java | 176 ---- .../ui/cells/SmallCategoryCell.java | 52 - .../report/table/ReportTableRatingCell.java | 36 - .../table/ReportTableRepeatingCell.java | 37 - .../ui/colorPick/ColorPickController.java | 141 --- .../ui/colorPick/ColorView.java | 167 ---- .../ui/commandLine/CommandBundle.java | 53 - .../ui/commandLine/CommandLine.java | 126 --- .../ui/commandLine/CommandLineController.java | 246 ----- .../ui/commandLine/HistoryEntry.java | 28 - .../ui/commandLine/HistoryType.java | 6 - .../ui/commandLine/commands/Command.java | 39 - .../ui/commandLine/commands/CommandClear.java | 31 - .../commandLine/commands/CommandDelete.java | 50 - .../ui/commandLine/commands/CommandHelp.java | 47 - .../ui/commandLine/commands/CommandInfo.java | 67 -- .../ui/commandLine/commands/CommandList.java | 55 -- .../ui/commandLine/commands/CommandOpen.java | 48 - .../commands/CommandShortcuts.java | 23 - .../commandLine/commands/CommandSwitch.java | 71 -- .../commands/PossibleCommands.java | 18 - .../ui/controller/BaseController.java | 54 -- .../ui/controller/CategoryController.java | 126 --- .../ui/controller/ChartController.java | 297 ------ .../ui/controller/Controller.java | 914 ------------------ .../ui/controller/DatePickerController.java | 124 --- .../ui/controller/ExportChartController.java | 326 ------- .../ui/controller/FilterController.java | 282 ------ .../ui/controller/HomeController.java | 108 --- .../ui/controller/ModalController.java | 75 -- .../ui/controller/NewCategoryController.java | 214 ---- .../ui/controller/NewPaymentController.java | 707 -------------- .../ui/controller/PaymentController.java | 226 ----- .../ui/controller/ReportController.java | 807 ---------------- .../ui/controller/SearchController.java | 327 ------- .../ui/controller/SplashScreenController.java | 199 ---- .../LocalServerSettingsController.java | 406 -------- .../OnlineServerSettingsController.java | 338 ------- .../settings/SettingsController.java | 44 - .../ui/customAlert/CustomAlertController.java | 87 -- .../ui/tagField/TagField.java | 228 ----- .../utils/DatabaseDeleter.java | 91 -- .../utils/DatabaseExporter.java | 69 -- .../utils/DatabaseImporter.java | 155 --- .../utils/LoadingModal.java | 78 -- .../deadlocker8/budgetmaster/changelog.json | 12 - .../budgetmaster/flags/english.png | Bin 18427 -> 0 bytes .../deadlocker8/budgetmaster/flags/german.png | Bin 7881 -> 0 bytes .../budgetmaster/fonts/OpenSans-Regular.ttf | Bin 217276 -> 0 bytes .../de/deadlocker8/budgetmaster/icon.png | Bin 6873 -> 0 bytes .../budgetmaster/languages/_de.properties | 350 ------- .../budgetmaster/languages/_en.properties | 350 ------- .../ui/colorPick/ColorPickGUI.fxml | 116 --- .../ui/commandLine/CommandLineGUI.fxml | 22 - .../ui/commandLine/_en.properties | 31 - .../ui/customAlert/CustomAlert.fxml | 32 - .../budgetmaster/ui/fxml/CategoryTab.fxml | 27 - .../budgetmaster/ui/fxml/ChartTab.fxml | 154 --- .../budgetmaster/ui/fxml/DatePickerGUI.fxml | 67 -- .../budgetmaster/ui/fxml/ExportChartGUI.fxml | 63 -- .../budgetmaster/ui/fxml/FilterGUI.fxml | 222 ----- .../deadlocker8/budgetmaster/ui/fxml/GUI.fxml | 55 -- .../budgetmaster/ui/fxml/HomeTab.fxml | 42 - .../budgetmaster/ui/fxml/Modal.fxml | 22 - .../budgetmaster/ui/fxml/NewCategoryGUI.fxml | 79 -- .../budgetmaster/ui/fxml/NewPaymentGUI.fxml | 227 ----- .../budgetmaster/ui/fxml/PaymentTab.fxml | 101 -- .../budgetmaster/ui/fxml/ReportTab.fxml | 75 -- .../budgetmaster/ui/fxml/SearchGUI.fxml | 113 --- .../ui/fxml/SettingsTabLocalServer.fxml | 220 ----- .../ui/fxml/SettingsTabOnlineServer.fxml | 235 ----- .../budgetmaster/ui/fxml/SplashScreen.fxml | 53 - .../de/deadlocker8/budgetmaster/ui/style.css | 98 -- BudgetMasterCore/.classpath | 36 - BudgetMasterCore/.project | 23 - .../.settings/org.eclipse.jdt.core.prefs | 5 - .../.settings/org.eclipse.m2e.core.prefs | 4 - BudgetMasterCore/pom.xml | 45 - .../budgetmaster/logic/Budget.java | 48 - .../budgetmaster/logic/FilterSettings.java | 219 ----- .../budgetmaster/logic/ServerType.java | 6 - .../budgetmaster/logic/Settings.java | 151 --- .../budgetmaster/logic/category/Category.java | 75 -- .../logic/category/CategoryBudget.java | 39 - .../logic/category/CategoryHandler.java | 61 -- .../logic/charts/CategoriesChart.java | 352 ------- .../logic/charts/CategoryInOutSum.java | 98 -- .../logic/charts/ChartExportable.java | 16 - .../budgetmaster/logic/charts/LegendType.java | 6 - .../logic/charts/MonthBarChart.java | 306 ------ .../logic/charts/MonthInOutSum.java | 67 -- .../logic/charts/MonthLineChart.java | 187 ---- .../logic/comparators/DateComparator.java | 18 - .../logic/comparators/RatingComparator.java | 15 - .../budgetmaster/logic/database/Database.java | 82 -- .../logic/database/DatabaseImportExport.java | 14 - .../logic/database/OldDatabase.java | 45 - .../localserver/LocalServerException.java | 11 - .../logic/localserver/LocalServerHandler.java | 144 --- .../logic/localserver/LocalServerStatus.java | 6 - .../logic/payment/LatestRepeatingPayment.java | 36 - .../logic/payment/NormalPayment.java | 20 - .../budgetmaster/logic/payment/Payment.java | 91 -- .../logic/payment/PaymentHandler.java | 202 ---- .../payment/PaymentJSONDeserializer.java | 59 -- .../logic/payment/PaymentJSONSerializer.java | 53 - .../logic/payment/RepeatingPayment.java | 71 -- .../logic/payment/RepeatingPaymentEntry.java | 45 - .../budgetmaster/logic/report/AmountType.java | 6 - .../logic/report/ColumnFilter.java | 45 - .../logic/report/ColumnOrder.java | 29 - .../budgetmaster/logic/report/ColumnType.java | 36 - .../logic/report/HeaderFooterPageEvent.java | 35 - .../logic/report/ReportGenerator.java | 297 ------ .../budgetmaster/logic/report/ReportItem.java | 106 -- .../logic/report/ReportPreferences.java | 112 --- .../logic/report/ReportSorting.java | 46 - .../logic/search/SearchPreferences.java | 122 --- .../serverconnection/ExceptionHandler.java | 48 - .../serverconnection/ServerConnection.java | 639 ------------ .../ServerConnectionException.java | 31 - .../serverconnection/ServerInformation.java | 84 -- .../serverconnection/ServerTagConnection.java | 309 ------ .../budgetmaster/logic/tag/Tag.java | 39 - .../budgetmaster/logic/tag/TagCache.java | 67 -- .../budgetmaster/logic/tag/TagHandler.java | 74 -- .../budgetmaster/logic/tag/TagMatch.java | 59 -- .../budgetmaster/logic/updater/Updater.java | 141 --- .../logic/updater/VersionInformation.java | 61 -- .../budgetmaster/logic/utils/Colors.java | 36 - .../budgetmaster/logic/utils/FileHelper.java | 106 -- .../budgetmaster/logic/utils/Fonts.java | 6 - .../budgetmaster/logic/utils/Helpers.java | 112 --- .../logic/utils/LanguageType.java | 35 - .../logic/utils/SaveFileType.java | 8 - .../budgetmaster/logic/utils/Strings.java | 240 ----- BudgetMasterServer/.classpath | 36 - BudgetMasterServer/.project | 23 - .../.settings/org.eclipse.jdt.core.prefs | 5 - .../.settings/org.eclipse.m2e.core.prefs | 4 - BudgetMasterServer/pom.xml | 95 -- .../logic/AdvancedRoute.java | 19 - .../budgetmasterserver/logic/Settings.java | 204 ---- .../budgetmasterserver/logic/Utils.java | 101 -- .../logic/database/DatabaseExporter.java | 217 ----- .../logic/database/DatabaseImporter.java | 236 ----- .../database/creator/DatabaseCreator.java | 73 -- .../creator/MysqlDatabaseCreator.java | 280 ------ .../creator/SqliteDatabaseCreator.java | 248 ----- .../database/handler/DatabaseHandler.java | 829 ---------------- .../handler/MysqlDatabaseHandler.java | 247 ----- .../handler/SqliteDatabaseHandler.java | 245 ----- .../taghandler/DatabaseTagHandler.java | 412 -------- .../taghandler/MysqlDatabaseTagHandler.java | 45 - .../taghandler/SqliteDatabaseTagHandler.java | 46 - .../budgetmasterserver/main/Main.java | 114 --- .../server/SparkServer.java | 221 ----- .../server/category/CategoryAdd.java | 56 -- .../server/category/CategoryDelete.java | 68 -- .../server/category/CategoryGet.java | 73 -- .../server/category/CategoryGetAll.java | 55 -- .../server/category/CategoryUpdate.java | 68 -- .../categorybudget/CategoryBudgetGet.java | 118 --- .../charts/CategoryInOutSumForMonth.java | 86 -- .../server/charts/MonthInOutSum.java | 100 -- .../server/database/DatabaseDelete.java | 60 -- .../server/database/DatabaseExport.java | 51 - .../server/database/DatabaseImport.java | 64 -- .../server/info/InformationGet.java | 48 - .../server/info/VersionGet.java | 36 - .../server/log/LogDelete.java | 42 - .../server/payment/normal/PaymentAdd.java | 77 -- .../server/payment/normal/PaymentDelete.java | 79 -- .../server/payment/normal/PaymentGet.java | 90 -- .../server/payment/normal/PaymentUpdate.java | 82 -- .../repeating/RepeatingPaymentAdd.java | 81 -- .../repeating/RepeatingPaymentDelete.java | 80 -- .../repeating/RepeatingPaymentGet.java | 73 -- .../repeating/RepeatingPaymentGetAll.java | 90 -- .../payment/search/PaymentMaxAmount.java | 58 -- .../server/payment/search/PaymentSearch.java | 203 ---- .../server/rest/RestGet.java | 74 -- .../server/shutdown/Shutdown.java | 57 -- .../tag/match/TagMatchAddForPayment.java | 64 -- .../match/TagMatchAddForRepeatingPayment.java | 64 -- .../tag/match/TagMatchDeleteForPayment.java | 68 -- .../TagMatchDeleteForRepeatingPayment.java | 68 -- .../tag/match/TagMatchExistingForPayment.java | 66 -- .../TagMatchExistingForRepeatingPayment.java | 66 -- .../tag/match/TagMatchGetAllForPayment.java | 79 -- .../TagMatchGetAllForRepeatingPayment.java | 79 -- .../server/tag/tag/TagAdd.java | 56 -- .../server/tag/tag/TagDelete.java | 68 -- .../server/tag/tag/TagGet.java | 72 -- .../server/tag/tag/TagGetAll.java | 54 -- .../server/tag/tag/TagGetByName.java | 56 -- .../updater/RepeatingPaymentUpdater.java | 102 -- .../server/updater/TagUpdater.java | 28 - .../budgetmasterserver/_en.properties | 8 - .../certificate/default_certificate.crt | 19 - .../certificate/default_keystore.jks | Bin 2150 -> 0 bytes .../budgetmasterserver/settings.json | 11 - .../tests/database/DatabaseHandlerTest.java | 282 ------ .../database/DatabaseImportExportTest.java | 168 ---- .../database/DatabaseTagHandlerTest.java | 144 --- .../tests/settings/SettingsTest.java | 41 - .../deadlocker8/budgetmaster/_en.properties | 8 - .../de/deadlocker8/budgetmaster/export.json | 1 - .../de/deadlocker8/budgetmaster/import.json | 1 - lib/Tools.jar | Bin 574606 -> 0 bytes pom.xml | 46 + .../budgetmaster/resources/changelog.json | 13 - .../resources/languages/_de.properties | 4 - src/main/java/Main.java | 21 + webUI/Logo.png | Bin 405942 -> 0 bytes webUI/Logo_with_text.png | Bin 605598 -> 0 bytes webUI/index.html | 98 -- webUI/login.css | 33 - webUI/login.html | 41 - webUI/main.css | 19 - webUI/main.js | 5 - webUI/style.css | 101 -- 240 files changed, 69 insertions(+), 24836 deletions(-) delete mode 100644 .project delete mode 100644 BudgetMasterClient/.classpath delete mode 100644 BudgetMasterClient/.project delete mode 100644 BudgetMasterClient/.settings/org.eclipse.jdt.core.prefs delete mode 100644 BudgetMasterClient/.settings/org.eclipse.m2e.core.prefs delete mode 100644 BudgetMasterClient/pom.xml delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/main/Main.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/Refreshable.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/RestartHandler.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/ShutdownHandler.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/Styleable.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/ButtonCategoryCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/CategoryBudgetCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/CategoryCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/LanguageCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/PaymentCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/RepeatingDayCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/SearchCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/SmallCategoryCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/report/table/ReportTableRatingCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/report/table/ReportTableRepeatingCell.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/colorPick/ColorPickController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/colorPick/ColorView.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandBundle.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandLine.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandLineController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/HistoryEntry.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/HistoryType.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/Command.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandClear.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandDelete.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandHelp.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandInfo.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandList.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandOpen.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandShortcuts.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandSwitch.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/PossibleCommands.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/BaseController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/CategoryController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ChartController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/Controller.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/DatePickerController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ExportChartController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/FilterController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/HomeController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ModalController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/NewCategoryController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/NewPaymentController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/PaymentController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ReportController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SearchController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SplashScreenController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/LocalServerSettingsController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/OnlineServerSettingsController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/SettingsController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/customAlert/CustomAlertController.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/tagField/TagField.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseDeleter.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseExporter.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseImporter.java delete mode 100644 BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/LoadingModal.java delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/changelog.json delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/flags/english.png delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/flags/german.png delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/fonts/OpenSans-Regular.ttf delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/icon.png delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/languages/_de.properties delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/languages/_en.properties delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/colorPick/ColorPickGUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/commandLine/CommandLineGUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/commandLine/_en.properties delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/customAlert/CustomAlert.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/DatePickerGUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SearchGUI.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml delete mode 100644 BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/style.css delete mode 100644 BudgetMasterCore/.classpath delete mode 100644 BudgetMasterCore/.project delete mode 100644 BudgetMasterCore/.settings/org.eclipse.jdt.core.prefs delete mode 100644 BudgetMasterCore/.settings/org.eclipse.m2e.core.prefs delete mode 100644 BudgetMasterCore/pom.xml delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/Budget.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/FilterSettings.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/ServerType.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/Settings.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/Category.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/CategoryBudget.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/CategoryHandler.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/CategoriesChart.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/CategoryInOutSum.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/ChartExportable.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/LegendType.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthBarChart.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthInOutSum.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthLineChart.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/comparators/DateComparator.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/comparators/RatingComparator.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/Database.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/DatabaseImportExport.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/OldDatabase.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerException.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerHandler.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerStatus.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/LatestRepeatingPayment.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/NormalPayment.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/Payment.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentHandler.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentJSONDeserializer.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentJSONSerializer.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/RepeatingPayment.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/RepeatingPaymentEntry.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/AmountType.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnFilter.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnOrder.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnType.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/HeaderFooterPageEvent.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportGenerator.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportItem.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportPreferences.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportSorting.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/search/SearchPreferences.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ExceptionHandler.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerConnection.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerConnectionException.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerInformation.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerTagConnection.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/Tag.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagCache.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagHandler.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagMatch.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/updater/Updater.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/updater/VersionInformation.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Colors.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/FileHelper.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Fonts.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Helpers.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/LanguageType.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/SaveFileType.java delete mode 100644 BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Strings.java delete mode 100644 BudgetMasterServer/.classpath delete mode 100644 BudgetMasterServer/.project delete mode 100644 BudgetMasterServer/.settings/org.eclipse.jdt.core.prefs delete mode 100644 BudgetMasterServer/.settings/org.eclipse.m2e.core.prefs delete mode 100644 BudgetMasterServer/pom.xml delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/AdvancedRoute.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/Settings.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/Utils.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/DatabaseExporter.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/DatabaseImporter.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/DatabaseCreator.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/MysqlDatabaseCreator.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/SqliteDatabaseCreator.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/DatabaseHandler.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/MysqlDatabaseHandler.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/SqliteDatabaseHandler.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/DatabaseTagHandler.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/MysqlDatabaseTagHandler.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/SqliteDatabaseTagHandler.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/main/Main.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/SparkServer.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryAdd.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryDelete.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryGet.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryGetAll.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryUpdate.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/categorybudget/CategoryBudgetGet.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/charts/CategoryInOutSumForMonth.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/charts/MonthInOutSum.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseDelete.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseExport.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseImport.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/info/InformationGet.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/info/VersionGet.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/log/LogDelete.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentAdd.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentDelete.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentGet.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentUpdate.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentAdd.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentDelete.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentGet.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentGetAll.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/search/PaymentMaxAmount.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/search/PaymentSearch.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/rest/RestGet.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/shutdown/Shutdown.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchAddForPayment.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchAddForRepeatingPayment.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchDeleteForPayment.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchDeleteForRepeatingPayment.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchExistingForPayment.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchExistingForRepeatingPayment.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchGetAllForPayment.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchGetAllForRepeatingPayment.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagAdd.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagDelete.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGet.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGetAll.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGetByName.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/updater/RepeatingPaymentUpdater.java delete mode 100644 BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/updater/TagUpdater.java delete mode 100644 BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/_en.properties delete mode 100644 BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/certificate/default_certificate.crt delete mode 100644 BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/certificate/default_keystore.jks delete mode 100644 BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/settings.json delete mode 100644 BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseHandlerTest.java delete mode 100644 BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseImportExportTest.java delete mode 100644 BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseTagHandlerTest.java delete mode 100644 BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/settings/SettingsTest.java delete mode 100644 BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/_en.properties delete mode 100644 BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/export.json delete mode 100644 BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/import.json delete mode 100644 lib/Tools.jar create mode 100644 pom.xml delete mode 100644 src/de/deadlocker8/budgetmaster/resources/changelog.json delete mode 100644 src/de/deadlocker8/budgetmaster/resources/languages/_de.properties create mode 100644 src/main/java/Main.java delete mode 100644 webUI/Logo.png delete mode 100644 webUI/Logo_with_text.png delete mode 100644 webUI/index.html delete mode 100644 webUI/login.css delete mode 100644 webUI/login.html delete mode 100644 webUI/main.css delete mode 100644 webUI/main.js delete mode 100644 webUI/style.css diff --git a/.gitignore b/.gitignore index a3f7c058f..5b6111e1d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,9 @@ bin/ target/ certs/ +.idea/ *.db +*.iml build/[0-9]*.[0-9]*.[0-9]* \ No newline at end of file diff --git a/.project b/.project deleted file mode 100644 index 4bbb34dd9..000000000 --- a/.project +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>BudgetMaster</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.jdt.core.javabuilder</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.eclipse.m2e.core.maven2Builder</name> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.eclipse.m2e.core.maven2Nature</nature> - <nature>org.eclipse.jdt.core.javanature</nature> - </natures> -</projectDescription> diff --git a/BudgetMasterClient/.classpath b/BudgetMasterClient/.classpath deleted file mode 100644 index 8e795b1c7..000000000 --- a/BudgetMasterClient/.classpath +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<classpath> - <classpathentry kind="src" output="target/classes" path="src/main/java"> - <attributes> - <attribute name="optional" value="true"/> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="src" output="target/test-classes" path="src/test/java"> - <attributes> - <attribute name="optional" value="true"/> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="output" path="target/classes"/> -</classpath> diff --git a/BudgetMasterClient/.project b/BudgetMasterClient/.project deleted file mode 100644 index 114266201..000000000 --- a/BudgetMasterClient/.project +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>BudgetMasterClient</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.jdt.core.javabuilder</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.eclipse.m2e.core.maven2Builder</name> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.eclipse.jdt.core.javanature</nature> - <nature>org.eclipse.m2e.core.maven2Nature</nature> - </natures> -</projectDescription> diff --git a/BudgetMasterClient/.settings/org.eclipse.jdt.core.prefs b/BudgetMasterClient/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 714351aec..000000000 --- a/BudgetMasterClient/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/BudgetMasterClient/.settings/org.eclipse.m2e.core.prefs b/BudgetMasterClient/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f1c..000000000 --- a/BudgetMasterClient/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 diff --git a/BudgetMasterClient/pom.xml b/BudgetMasterClient/pom.xml deleted file mode 100644 index 4670c8408..000000000 --- a/BudgetMasterClient/pom.xml +++ /dev/null @@ -1,111 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <groupId>de.deadlocker8</groupId> - <artifactId>BudgetMasterClient</artifactId> - <version>1.8.0</version> - <name>BudgetMasterClient</name> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <version>3.7.0</version> - <configuration> - <source>1.8</source> - <target>1.8</target> - </configuration> - </plugin> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <configuration> - <outputDirectory>../build/${project.version}</outputDirectory> - <finalName>BudgetMasterClient-v${project.version}</finalName> - <appendAssemblyId>false</appendAssemblyId> - <archive> - <manifest> - <mainClass>de.deadlocker8.budgetmasterclient.main.Main</mainClass> - </manifest> - </archive> - <descriptorRefs> - <descriptorRef>jar-with-dependencies</descriptorRef> - </descriptorRefs> - </configuration> - <executions> - <execution> - <id>make-assembly</id> <!-- this is used for inheritance merges --> - <phase>package</phase> <!-- bind to the packaging phase --> - <goals> - <goal>single</goal> - </goals> - </execution> - </executions> - </plugin> - <!-- LAUNCH4J --> - <plugin> - <groupId>com.akathist.maven.plugins.launch4j</groupId> - <artifactId>launch4j-maven-plugin</artifactId> - <version>1.7.21</version> - <executions> - <execution> - <id>l4j-clui</id> - <phase>package</phase> - <goals> - <goal>launch4j</goal> - </goals> - <configuration> - <headerType>gui</headerType> - <jar>../build/${project.version}/BudgetMasterClient-v${project.version}.jar</jar> - <outfile>../build/${project.version}/BudgetMasterClient-v${project.version}.exe</outfile> - <downloadUrl>http://java.com/download</downloadUrl> - <classPath> - <mainClass>de.deadlocker8.budgetmasterclient.main.Main</mainClass> - </classPath> - <jre> - <bundledJre64Bit>false</bundledJre64Bit> - <bundledJreAsFallback>false</bundledJreAsFallback> - <minVersion>1.8.0</minVersion> - <jdkPreference>preferJre</jdkPreference> - <runtimeBits>64/32</runtimeBits> - </jre> - <icon>../build/icon.ico</icon> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>com.google.code.gson</groupId> - <artifactId>gson</artifactId> - <version>2.8.1</version> - </dependency> - <dependency> - <groupId>joda-time</groupId> - <artifactId>joda-time</artifactId> - <version>2.9.7</version> - </dependency> - <dependency> - <groupId>de.deadlocker8</groupId> - <artifactId>BudgetMasterCore</artifactId> - <version>0.0.1-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>com.itextpdf</groupId> - <artifactId>itextpdf</artifactId> - <version>5.0.6</version> - </dependency> - <dependency> - <groupId>org.controlsfx</groupId> - <artifactId>controlsfx</artifactId> - <version>8.40.12</version> - </dependency> - <dependency> - <groupId>de.deadlocker8</groupId> - <artifactId>tools</artifactId> - <version>1.0.0</version> - </dependency> - </dependencies> -</project> \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/main/Main.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/main/Main.java deleted file mode 100644 index 774cc3c8b..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/main/Main.java +++ /dev/null @@ -1,62 +0,0 @@ -package de.deadlocker8.budgetmasterclient.main; - -import java.io.File; -import java.util.Locale; - -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.utils.FileHelper; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.ShutdownHandler; -import de.deadlocker8.budgetmasterclient.ui.controller.SplashScreenController; -import javafx.application.Application; -import javafx.scene.image.Image; -import javafx.stage.Stage; -import logger.FileOutputMode; -import logger.Logger; -import tools.Localization; -import tools.PathUtils; - -public class Main extends Application -{ - public static Stage primaryStage; - - @Override - public void start(Stage stage) - { - primaryStage = stage; - - // load correct language - Settings settings = FileHelper.loadSettings(); - if(settings != null && settings.getLanguage() != null) - { - Localization.loadLanguage(settings.getLanguage().getLocale()); - } - - ShutdownHandler shutdownHandler = new ShutdownHandler(); - - Image icon = new Image("/de/deadlocker8/budgetmaster/icon.png"); - new SplashScreenController(stage, icon, getParameters().getNamed().get("update") != null, shutdownHandler); - } - - @Override - public void init() throws Exception - { - Localization.init("de/deadlocker8/budgetmaster/languages/"); - Localization.loadLanguage(Locale.ENGLISH); - - Parameters params = getParameters(); - String logLevelParam = params.getNamed().get("loglevel"); - Logger.setLevel(logLevelParam); - - File logFolder = new File(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER)); - PathUtils.checkFolder(logFolder); - Logger.enableFileOutput(logFolder, System.out, System.err, FileOutputMode.COMBINED); - - Logger.appInfo(Localization.getString(Strings.APP_NAME), Localization.getString(Strings.VERSION_NAME), Localization.getString(Strings.VERSION_CODE), Localization.getString(Strings.VERSION_DATE)); - } - - public static void main(String[] args) - { - launch(args); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/Refreshable.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/Refreshable.java deleted file mode 100644 index 0553784ba..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/Refreshable.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui; - -public interface Refreshable -{ - void refresh(); -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/RestartHandler.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/RestartHandler.java deleted file mode 100644 index faa92647c..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/RestartHandler.java +++ /dev/null @@ -1,78 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui; - -import java.util.Optional; - -import de.deadlocker8.budgetmaster.logic.utils.LanguageType; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.main.Main; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import de.deadlocker8.budgetmasterclient.ui.controller.SplashScreenController; -import javafx.scene.control.Alert; -import javafx.scene.control.Button; -import javafx.scene.control.ButtonType; -import javafx.scene.control.DialogPane; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.image.Image; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyEvent; -import javafx.stage.Stage; -import tools.Localization; - -public class RestartHandler -{ - private Controller controller; - - public RestartHandler(Controller controller) - { - this.controller = controller; - } - - public void handleRestart(LanguageType previousLanguage) - { - controller.refresh(controller.getFilterSettings()); - controller.showNotification(Localization.getString(Strings.NOTIFICATION_SETTINGS_SAVE)); - - if(controller.getSettings().isAutoUpdateCheckEnabled()) - { - controller.checkForUpdates(false); - } - - //restart application if language has changed - if(controller.getSettings().getLanguage() != previousLanguage) - { - Alert alert = new Alert(AlertType.INFORMATION); - alert.setTitle(Localization.getString(Strings.INFO_TITLE_LANGUAGE_CHANGED)); - alert.setHeaderText(""); - alert.setContentText(Localization.getString(Strings.INFO_TEXT_LANGUAGE_CHANGED)); - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(controller.getIcon()); - - ButtonType buttonTypeOne = new ButtonType(Localization.getString(Strings.INFO_TEXT_LANGUAGE_CHANGED_RESTART_NOW)); - ButtonType buttonTypeTwo = new ButtonType(Localization.getString(Strings.INFO_TEXT_LANGUAGE_CHANGED_RESTART_LATER)); - alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeTwo); - - DialogPane dialogPane = alert.getDialogPane(); - dialogPane.getButtonTypes().stream().map(dialogPane::lookupButton).forEach(button -> button.addEventHandler(KeyEvent.KEY_PRESSED, (event) -> { - if(KeyCode.ENTER.equals(event.getCode()) && event.getTarget() instanceof Button) - { - ((Button)event.getTarget()).fire(); - } - })); - - Optional<ButtonType> result = alert.showAndWait(); - if (result.get() == buttonTypeOne) - { - controller.getStage().close(); - - Localization.loadLanguage(controller.getSettings().getLanguage().getLocale()); - - Image icon = new Image("/de/deadlocker8/budgetmaster/icon.png"); - new SplashScreenController(Main.primaryStage, icon, false, controller.getShutdownHandler()); - } - else - { - alert.close(); - } - } - } -} diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/ShutdownHandler.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/ShutdownHandler.java deleted file mode 100644 index 616beec09..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/ShutdownHandler.java +++ /dev/null @@ -1,49 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui; - -import de.deadlocker8.budgetmaster.logic.ServerType; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import logger.Logger; -import tools.Worker; - -public class ShutdownHandler -{ - private Thread shutdownThread; - private Controller controller; - - public ShutdownHandler() - { - shutdownThread = new Thread(() -> { - shutdown(); - }); - } - - public Thread getShutdownThread() - { - return shutdownThread; - } - - public void setController(Controller controller) - { - this.controller = controller; - } - - public void shutdown() - { - if(controller.getSettings().getServerType().equals(ServerType.LOCAL)) - { - Logger.debug("Stopping local BudgetMasterServer..."); - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - connection.shutdownServer(); - } - catch(Exception e) - { - Logger.error(e); - } - } - Worker.shutdown(); - System.exit(0); - } -} diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/Styleable.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/Styleable.java deleted file mode 100644 index 693e63a97..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/Styleable.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui; - -public interface Styleable -{ - public void applyStyle(); -} diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/ButtonCategoryCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/ButtonCategoryCell.java deleted file mode 100644 index dc6394c3a..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/ButtonCategoryCell.java +++ /dev/null @@ -1,54 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.layout.HBox; -import javafx.scene.paint.Color; -import tools.ConvertTo; - -public class ButtonCategoryCell extends ListCell<Category> -{ - private Color color; - - public ButtonCategoryCell(Color color) - { - super(); - this.color = color; - } - - public void setColor(Color color) - { - this.color = color; - } - - @Override - protected void updateItem(Category item, boolean empty) - { - super.updateItem(item, empty); - - if(!empty) - { - HBox hbox = new HBox(); - - Label labelName = new Label(item.getName()); - labelName.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: " + ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(color))); - labelName.setAlignment(Pos.CENTER); - hbox.getChildren().add(labelName); - - hbox.setPadding(new Insets(0)); - setStyle("-fx-background: transparent;"); - setGraphic(hbox); - setText(null); - setAlignment(Pos.CENTER); - } - else - { - setStyle("-fx-background: transparent"); - setText(null); - setGraphic(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/CategoryBudgetCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/CategoryBudgetCell.java deleted file mode 100644 index b72a3c43c..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/CategoryBudgetCell.java +++ /dev/null @@ -1,87 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.category.CategoryBudget; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmasterclient.ui.controller.HomeController; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.Region; -import javafx.scene.paint.Color; -import tools.ConvertTo; - -public class CategoryBudgetCell extends ListCell<CategoryBudget> -{ - private final double HEIGHT = 40.0; - private HomeController homeController; - - public CategoryBudgetCell(HomeController homeController) - { - super(); - this.homeController = homeController; - } - - @Override - protected void updateItem(CategoryBudget item, boolean empty) - { - super.updateItem(item, empty); - - if(!empty) - { - HBox hbox = new HBox(); - Category currentCategory = item.getCategory(); - - Label labelCircle = new Label(currentCategory.getName().substring(0, 1).toUpperCase()); - labelCircle.setPrefWidth(HEIGHT); - labelCircle.setPrefHeight(HEIGHT); - labelCircle.setAlignment(Pos.CENTER); - labelCircle.getStyleClass().add("greylabel"); - String textColor = ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(Color.web(currentCategory.getColor()))); - labelCircle.setStyle("-fx-background-color: " + currentCategory.getColor() + "; -fx-background-radius: 50%; -fx-text-fill: " + textColor + "; -fx-font-weight: bold; -fx-font-size: 20;"); - hbox.getChildren().add(labelCircle); - - Label labelName = new Label(currentCategory.getName()); - labelName.setPrefHeight(HEIGHT); - labelName.setStyle("-fx-font-weight: bold; -fx-font-size: 16; -fx-text-fill: #212121"); - labelName.setAlignment(Pos.CENTER); - labelName.getStyleClass().add("greylabel"); - hbox.getChildren().add(labelName); - HBox.setMargin(labelName, new Insets(0, 0, 0, 20)); - - Region r = new Region(); - hbox.getChildren().add(r); - HBox.setHgrow(r, Priority.ALWAYS); - - Label labelBudget = new Label(Helpers.getCurrencyString(item.getBudget() / 100.0, homeController.getController().getSettings().getCurrency())); - labelBudget.setStyle("-fx-font-weight: bold; -fx-font-size: 16; -fx-text-fill: #247A2D;"); - if(item.getBudget() > 0) - { - labelBudget.setText("+" + labelBudget.getText()); - } - else - { - labelBudget.setStyle("-fx-font-weight: bold; -fx-font-size: 16; -fx-text-fill: #CC0000"); - } - labelBudget.setPrefHeight(HEIGHT); - labelBudget.setAlignment(Pos.CENTER); - labelBudget.getStyleClass().add("greylabel"); - hbox.getChildren().add(labelBudget); - HBox.setMargin(labelBudget, new Insets(0, 0, 0, 20)); - - hbox.setPadding(new Insets(10)); - setStyle("-fx-background: transparent; -fx-border-color: #545454; -fx-border-width: 0 0 1 0"); - setGraphic(hbox); - setAlignment(Pos.CENTER); - } - else - { - setStyle("-fx-background: transparent"); - setText(null); - setGraphic(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/CategoryCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/CategoryCell.java deleted file mode 100644 index 71d184205..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/CategoryCell.java +++ /dev/null @@ -1,116 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells; - -import java.util.Optional; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.controller.CategoryController; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.control.Alert; -import javafx.scene.control.Button; -import javafx.scene.control.ButtonType; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.Region; -import javafx.scene.paint.Color; -import javafx.stage.Stage; -import tools.ConvertTo; -import tools.Localization; - -public class CategoryCell extends ListCell<Category> -{ - private final double HEIGHT = 40.0; - private CategoryController categoryController; - - public CategoryCell(CategoryController categoryController) - { - super(); - this.categoryController = categoryController; - } - - @Override - protected void updateItem(Category item, boolean empty) - { - super.updateItem(item, empty); - - if(!empty) - { - HBox hbox = new HBox(); - - Label labelCircle = new Label(item.getName().substring(0, 1).toUpperCase()); - labelCircle.setPrefWidth(HEIGHT); - labelCircle.setPrefHeight(HEIGHT); - labelCircle.setAlignment(Pos.CENTER); - labelCircle.getStyleClass().add("greylabel"); - String textColor = ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(Color.web(item.getColor()))); - labelCircle.setStyle("-fx-background-color: " + item.getColor() + "; -fx-background-radius: 50%; -fx-text-fill: " + textColor + "; -fx-font-weight: bold; -fx-font-size: 20;"); - hbox.getChildren().add(labelCircle); - - Label labelName = new Label(item.getName()); - labelName.setPrefHeight(HEIGHT); - labelName.setStyle("-fx-font-weight: bold; -fx-font-size: 16; -fx-text-fill: #212121"); - labelName.setAlignment(Pos.CENTER); - labelName.getStyleClass().add("greylabel"); - hbox.getChildren().add(labelName); - HBox.setMargin(labelName, new Insets(0, 0, 0, 20)); - - Region r = new Region(); - hbox.getChildren().add(r); - HBox.setHgrow(r, Priority.ALWAYS); - - Button buttonEdit = new Button(); - buttonEdit.setGraphic(new FontIcon(FontIconType.PENCIL, 16, Color.web("#212121"))); - buttonEdit.setPrefHeight(HEIGHT); - buttonEdit.getStyleClass().add("greylabel"); - buttonEdit.setStyle("-fx-background-color: transparent"); - buttonEdit.setOnAction((e)->{ - categoryController.newCategory(true, item); - }); - hbox.getChildren().add(buttonEdit); - HBox.setMargin(buttonEdit, new Insets(0, 0, 0, 25)); - - Button buttonDelete = new Button(); - buttonDelete.setGraphic(new FontIcon(FontIconType.TRASH, 16, Color.web("#212121"))); - buttonDelete.setPrefHeight(HEIGHT); - buttonDelete.getStyleClass().add("greylabel"); - buttonDelete.setStyle("-fx-background-color: transparent"); - buttonDelete.setOnAction((event)->{ - Alert alert = new Alert(Alert.AlertType.CONFIRMATION); - alert.setTitle(Localization.getString(Strings.INFO_TITLE_CATEGORY_DELETE)); - alert.setHeaderText(""); - alert.setContentText(Localization.getString(Strings.INFO_TEXT_CATEGORY_DELETE)); - Stage dialogStage = (Stage) alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(categoryController.getController().getIcon()); - dialogStage.centerOnScreen(); - - Optional<ButtonType> result = alert.showAndWait(); - if (result.get() == ButtonType.OK) - { - categoryController.deleteCategory(item.getID()); - } - }); - //don't allow category "rest" to be deleted - if(item.getID() != 2) - { - hbox.getChildren().add(buttonDelete); - HBox.setMargin(buttonDelete, new Insets(0, 0, 0, 5)); - } - - hbox.setPadding(new Insets(10)); - setStyle("-fx-background: transparent; -fx-border-color: #545454; -fx-border-width: 0 0 1 0"); - setGraphic(hbox); - setAlignment(Pos.CENTER); - } - else - { - setStyle("-fx-background: transparent"); - setText(null); - setGraphic(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/LanguageCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/LanguageCell.java deleted file mode 100644 index a79830114..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/LanguageCell.java +++ /dev/null @@ -1,63 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells; - -import de.deadlocker8.budgetmaster.logic.utils.LanguageType; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.image.Image; -import javafx.scene.image.ImageView; -import javafx.scene.layout.HBox; - -public class LanguageCell extends ListCell<LanguageType> -{ - private final double HEIGHT = 20.0; - private boolean useBorder; - - public LanguageCell(boolean useBorder) - { - this.useBorder = useBorder; - } - - @Override - protected void updateItem(LanguageType item, boolean empty) - { - super.updateItem(item, empty); - - if(!empty) - { - HBox hbox = new HBox(); - - Image image = new Image("de/deadlocker8/budgetmaster/flags/" + item.getIconName() + ".png"); - ImageView imageView = new ImageView(image); - imageView.setFitWidth(HEIGHT); - imageView.setFitHeight(HEIGHT); - hbox.getChildren().add(imageView); - - Label labelName = new Label(item.getName()); - labelName.setPrefHeight(HEIGHT); - labelName.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #212121"); - labelName.setAlignment(Pos.CENTER); - hbox.getChildren().add(labelName); - HBox.setMargin(labelName, new Insets(0, 0, 0, 20)); - - hbox.setPadding(new Insets(0)); - if(useBorder) - { - setStyle("-fx-background: transparent; -fx-border-color: #545454; -fx-border-width: 0 0 1 0"); - } - else - { - setStyle("-fx-background: transparent;"); - } - setGraphic(hbox); - setAlignment(Pos.CENTER); - } - else - { - setStyle("-fx-background: transparent"); - setText(null); - setGraphic(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/PaymentCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/PaymentCell.java deleted file mode 100644 index cb20223ae..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/PaymentCell.java +++ /dev/null @@ -1,286 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells; - -import java.text.DateFormat; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Date; -import java.util.Optional; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.controller.PaymentController; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.animation.FadeTransition; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.Node; -import javafx.scene.control.Alert; -import javafx.scene.control.Button; -import javafx.scene.control.ButtonBar.ButtonData; -import javafx.scene.control.ButtonType; -import javafx.scene.control.DialogPane; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.control.Tooltip; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyEvent; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.Region; -import javafx.scene.layout.VBox; -import javafx.scene.paint.Color; -import javafx.stage.Stage; -import javafx.util.Duration; -import logger.Logger; -import tools.ConvertTo; -import tools.Localization; - -public class PaymentCell extends ListCell<Payment> -{ - private final double HEIGHT = 30.0; - private PaymentController paymentController; - - public PaymentCell(PaymentController paymentController) - { - super(); - this.paymentController = paymentController; - } - - @Override - protected void updateItem(Payment item, boolean empty) - { - super.updateItem(item, empty); - - if(!empty) - { - Category category = paymentController.getController().getCategoryHandler().getCategory(item.getCategoryID()); - - HBox hbox = new HBox(); - - String dateString = item.getDate(); - DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - try - { - Date date = format.parse(dateString); - DateFormat finalFormat = new SimpleDateFormat("dd.MM.yy"); - dateString = finalFormat.format(date); - } - catch(ParseException e) - { - Logger.error(e); - } - Label labelDate = new Label(dateString); - labelDate.setPrefHeight(HEIGHT); - labelDate.setAlignment(Pos.CENTER); - labelDate.getStyleClass().add("greylabel"); - labelDate.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #212121"); - labelDate.setMinWidth(60); - hbox.getChildren().add(labelDate); - - Label labelRepeating = new Label(); - if(item instanceof RepeatingPaymentEntry) - { - labelRepeating.setGraphic(new FontIcon(FontIconType.CALENDAR, 18, Color.web("#212121"))); - } - else - { - labelRepeating.setGraphic(new FontIcon(FontIconType.CALENDAR, 18, Color.TRANSPARENT)); - } - labelRepeating.setPrefHeight(HEIGHT); - labelRepeating.setStyle("-fx-font-size: 15; -fx-text-fill: #212121"); - labelRepeating.setAlignment(Pos.CENTER); - labelRepeating.getStyleClass().add("greylabel"); - hbox.getChildren().add(labelRepeating); - HBox.setMargin(labelRepeating, new Insets(0, 20, 0, 15)); - - Label labelCircle = new Label(category.getName().substring(0, 1).toUpperCase()); - labelCircle.setMinWidth(HEIGHT); - labelCircle.setMinHeight(HEIGHT); - labelCircle.setAlignment(Pos.CENTER); - labelCircle.getStyleClass().add("greylabel"); - String textColor = ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(Color.web(category.getColor()))); - labelCircle.setStyle("-fx-background-color: " + category.getColor() + "; -fx-background-radius: 50%; -fx-text-fill: " + textColor + "; -fx-font-weight: bold; -fx-font-size: 18;"); - Tooltip tooltip = new Tooltip(category.getName()); - tooltip.setStyle("-fx-font-size: 14"); - labelCircle.setTooltip(tooltip); - hbox.getChildren().add(labelCircle); - - VBox vboxNameAndDescription = new VBox(); - vboxNameAndDescription.setSpacing(2); - vboxNameAndDescription.setAlignment(Pos.CENTER_LEFT); - vboxNameAndDescription.setMinHeight(HEIGHT + 12); - - Label labelName = new Label(item.getName()); - labelName.setStyle("-fx-font-size: 15; -fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelName.setAlignment(Pos.CENTER_LEFT); - labelName.getStyleClass().add("greylabel"); - vboxNameAndDescription.getChildren().add(labelName); - - if(item.getDescription() != null && !item.getDescription().equals("")) - { - Label labelDescription = new Label(Helpers.getFlatText(item.getDescription())); - labelDescription.setStyle("-fx-font-size: 14; -fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT) + "; -fx-font-style: italic"); - labelDescription.setAlignment(Pos.CENTER_LEFT); - labelDescription.getStyleClass().add("greylabel"); - vboxNameAndDescription.getChildren().add(labelDescription); - } - - hbox.getChildren().add(vboxNameAndDescription); - HBox.setMargin(vboxNameAndDescription, new Insets(0, 0, 0, 20)); - - Region r = new Region(); - hbox.getChildren().add(r); - HBox.setHgrow(r, Priority.ALWAYS); - - Label labelBudget = new Label(Helpers.getCurrencyString(item.getAmount(), paymentController.getController().getSettings().getCurrency())); - labelBudget.setPrefHeight(HEIGHT); - labelBudget.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #247A2D"); - labelBudget.setAlignment(Pos.CENTER); - labelBudget.getStyleClass().add("greylabel"); - labelBudget.setMinWidth(90); - hbox.getChildren().add(labelBudget); - HBox.setMargin(labelBudget, new Insets(0, 0, 0, 20)); - - if(item.isIncome()) - { - labelBudget.setText("+" + labelBudget.getText()); - } - else - { - labelBudget.setText(labelBudget.getText()); - labelBudget.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #CC0000"); - } - - Button buttonDelete = new Button(); - buttonDelete.setGraphic(new FontIcon(FontIconType.TRASH, 16, Color.web("#212121"))); - buttonDelete.setPrefHeight(HEIGHT); - buttonDelete.getStyleClass().add("greylabel"); - buttonDelete.setStyle("-fx-background-color: transparent"); - buttonDelete.setOnAction((event) -> { - Alert alert = new Alert(Alert.AlertType.CONFIRMATION); - alert.setTitle(Localization.getString(Strings.INFO_TITLE_PAYMENT_DELETE)); - alert.setHeaderText(""); - alert.setContentText(Localization.getString(Strings.INFO_TEXT_PAYMENT_DELETE)); - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(paymentController.getController().getIcon()); - dialogStage.centerOnScreen(); - - if(item instanceof RepeatingPaymentEntry) - { - alert.setContentText(Localization.getString(Strings.INFO_TEXT_PAYMENT_REPEATING_DELETE)); - - ButtonType buttonTypeOne = new ButtonType(Localization.getString(Strings.INFO_TEXT_PAYMENT_REPEATING_DELETE_ALL)); - ButtonType buttonTypeTwo = new ButtonType(Localization.getString(Strings.INFO_TEXT_PAYMENT_REPEATING_DELETE_FUTURES)); - ButtonType buttonTypeCancel = new ButtonType(Localization.getString(Strings.CANCEL), ButtonData.CANCEL_CLOSE); - - alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeTwo, buttonTypeCancel); - - DialogPane dialogPane = alert.getDialogPane(); - dialogPane.getButtonTypes().stream().map(dialogPane::lookupButton).forEach(button -> button.addEventHandler(KeyEvent.KEY_PRESSED, (e) -> { - if(KeyCode.ENTER.equals(e.getCode()) && e.getTarget() instanceof Button) - { - ((Button)e.getTarget()).fire(); - } - })); - - Optional<ButtonType> result = alert.showAndWait(); - if(result.get() == buttonTypeOne) - { - paymentController.deleteRepeatingPayment((RepeatingPaymentEntry)item); - } - else if(result.get() == buttonTypeTwo) - { - paymentController.deleteFuturePayments((RepeatingPaymentEntry)item); - } - } - else - { - Optional<ButtonType> result = alert.showAndWait(); - if(result.get() == ButtonType.OK) - { - paymentController.deleteNormalPayment((NormalPayment)item); - } - } - }); - hbox.getChildren().add(buttonDelete); - HBox.setMargin(buttonDelete, new Insets(0, 0, 0, 10)); - // don't allow "Übertrag" to be deleted - if(item.getID() == -1) - { - buttonDelete.setVisible(false); - } - - hbox.setPadding(new Insets(10, 8, 10, 5)); - - // payment is selected after search - Payment selectedPayment = paymentController.getController().getSelectedPayment(); - selectPayment(selectedPayment, item, hbox); - - hbox.setPadding(new Insets(8, 8, 8, 5)); - hbox.setAlignment(Pos.CENTER_LEFT); - setStyle("-fx-background: transparent; -fx-border-color: #545454; -fx-border-width: 0 0 1 0"); - setGraphic(hbox); - setAlignment(Pos.CENTER); - } - else - { - setStyle("-fx-background: transparent"); - setText(null); - setGraphic(null); - } - } - - private void selectPayment(Payment selectedPayment, Payment item, Node noteToFade) - { - if(selectedPayment == null) - return; - - if(selectedPayment instanceof NormalPayment) - { - if(item instanceof NormalPayment) - { - if(item.getID() != selectedPayment.getID()) - { - return; - } - } - else - { - return; - } - } - - if(selectedPayment instanceof RepeatingPayment) - { - if(item instanceof RepeatingPaymentEntry) - { - RepeatingPaymentEntry itemRepeating = (RepeatingPaymentEntry)item; - if(itemRepeating.getRepeatingPaymentID() != selectedPayment.getID()) - { - return; - } - } - else - { - return; - } - } - - FadeTransition ft = new FadeTransition(Duration.millis(750), noteToFade); - ft.setFromValue(1.0); - ft.setToValue(0.0); - ft.setCycleCount(4); - ft.setAutoReverse(true); - ft.play(); - ft.setOnFinished((event)->{ - paymentController.getController().setSelectedPayment(null); - }); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/RepeatingDayCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/RepeatingDayCell.java deleted file mode 100644 index 4a811dab1..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/RepeatingDayCell.java +++ /dev/null @@ -1,21 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells; - -import javafx.scene.control.ListCell; - -public class RepeatingDayCell extends ListCell<Integer> -{ - @Override - protected void updateItem(Integer item, boolean empty) - { - super.updateItem(item, empty); - - if(!empty && item != 0) - { - setText(String.valueOf(item)); - } - else - { - setText(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/SearchCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/SearchCell.java deleted file mode 100644 index 9500ffcc0..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/SearchCell.java +++ /dev/null @@ -1,176 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells; - -import java.text.DateFormat; -import java.text.ParseException; -import java.text.SimpleDateFormat; -import java.util.Date; - -import org.joda.time.DateTime; -import org.joda.time.format.DateTimeFormat; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmasterclient.ui.controller.SearchController; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.control.Button; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.control.Tooltip; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.Region; -import javafx.scene.layout.VBox; -import javafx.scene.paint.Color; -import logger.Logger; -import tools.ConvertTo; - -public class SearchCell extends ListCell<Payment> -{ - private final double HEIGHT = 30.0; - private SearchController searchController; - - public SearchCell(SearchController searchController) - { - super(); - this.searchController = searchController; - } - - @Override - protected void updateItem(Payment item, boolean empty) - { - super.updateItem(item, empty); - - if(!empty) - { - Category category = searchController.getController().getCategoryHandler().getCategory(item.getCategoryID()); - - HBox hbox = new HBox(); - - String dateString = item.getDate(); - DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - try - { - Date date = format.parse(dateString); - DateFormat finalFormat = new SimpleDateFormat("dd.MM.yy"); - dateString = finalFormat.format(date); - } - catch(ParseException e) - { - Logger.error(e); - } - Label labelDate = new Label(dateString); - labelDate.setPrefHeight(HEIGHT); - labelDate.setAlignment(Pos.CENTER); - labelDate.getStyleClass().add("greylabel"); - labelDate.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #212121"); - labelDate.setMinWidth(60); - hbox.getChildren().add(labelDate); - - Label labelRepeating = new Label(); - if(item instanceof RepeatingPayment) - { - labelRepeating.setGraphic(new FontIcon(FontIconType.CALENDAR, 18, Color.web("#212121"))); - } - else - { - labelRepeating.setGraphic(new FontIcon(FontIconType.CALENDAR, 18, Color.TRANSPARENT)); - } - labelRepeating.setPrefHeight(HEIGHT); - labelRepeating.setStyle("-fx-font-size: 15; -fx-text-fill: #212121"); - labelRepeating.setAlignment(Pos.CENTER); - labelRepeating.getStyleClass().add("greylabel"); - hbox.getChildren().add(labelRepeating); - HBox.setMargin(labelRepeating, new Insets(0, 20, 0, 15)); - - Label labelCircle = new Label(category.getName().substring(0, 1).toUpperCase()); - labelCircle.setMinWidth(HEIGHT); - labelCircle.setMinHeight(HEIGHT); - labelCircle.setAlignment(Pos.CENTER); - labelCircle.getStyleClass().add("greylabel"); - String textColor = ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(Color.web(category.getColor()))); - labelCircle.setStyle("-fx-background-color: " + category.getColor() + "; -fx-background-radius: 50%; -fx-text-fill: " + textColor + "; -fx-font-weight: bold; -fx-font-size: 18;"); - Tooltip tooltip = new Tooltip(category.getName()); - tooltip.setStyle("-fx-font-size: 14"); - labelCircle.setTooltip(tooltip); - hbox.getChildren().add(labelCircle); - - VBox vboxNameAndDescription = new VBox(); - vboxNameAndDescription.setSpacing(2); - vboxNameAndDescription.setAlignment(Pos.CENTER_LEFT); - vboxNameAndDescription.setMinHeight(HEIGHT + 12); - - Label labelName = new Label(item.getName()); - labelName.setStyle("-fx-font-size: 15; -fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelName.setAlignment(Pos.CENTER_LEFT); - labelName.getStyleClass().add("greylabel"); - vboxNameAndDescription.getChildren().add(labelName); - - if(item.getDescription() != null && !item.getDescription().equals("")) - { - Label labelDescription = new Label(Helpers.getFlatText(item.getDescription())); - labelDescription.setStyle("-fx-font-size: 14; -fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT) + "; -fx-font-style: italic"); - labelDescription.setAlignment(Pos.CENTER_LEFT); - labelDescription.getStyleClass().add("greylabel"); - vboxNameAndDescription.getChildren().add(labelDescription); - } - - hbox.getChildren().add(vboxNameAndDescription); - HBox.setMargin(vboxNameAndDescription, new Insets(0, 0, 0, 20)); - - Region r = new Region(); - hbox.getChildren().add(r); - HBox.setHgrow(r, Priority.ALWAYS); - - Label labelBudget = new Label(Helpers.getCurrencyString(item.getAmount(), searchController.getController().getSettings().getCurrency())); - labelBudget.setPrefHeight(HEIGHT); - labelBudget.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #247A2D"); - labelBudget.setAlignment(Pos.CENTER); - labelBudget.getStyleClass().add("greylabel"); - labelBudget.setMinWidth(90); - hbox.getChildren().add(labelBudget); - HBox.setMargin(labelBudget, new Insets(0, 0, 0, 20)); - - if(item.isIncome()) - { - labelBudget.setText("+" + labelBudget.getText()); - } - else - { - labelBudget.setText(labelBudget.getText()); - labelBudget.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #CC0000"); - } - - Button buttonGoto = new Button(); - buttonGoto.setGraphic(new FontIcon(FontIconType.EXTERNAL_LINK_SQUARE, 16, Color.web("#212121"))); - buttonGoto.setPrefHeight(HEIGHT); - buttonGoto.getStyleClass().add("greylabel"); - buttonGoto.setStyle("-fx-background-color: transparent"); - buttonGoto.setOnAction((event) -> { - DateTime newDate = DateTime.parse(item.getDate(), DateTimeFormat.forPattern("YYYY-MM-dd")); - searchController.getController().setSelectedPayment(item); - searchController.getController().setDate(newDate); - searchController.cancel(); - }); - hbox.getChildren().add(buttonGoto); - HBox.setMargin(buttonGoto, new Insets(0, 0, 0, 10)); - - hbox.setPadding(new Insets(8, 8, 8, 5)); - hbox.setAlignment(Pos.CENTER_LEFT); - setStyle("-fx-background: transparent; -fx-border-color: #545454; -fx-border-width: 0 0 1 0"); - setGraphic(hbox); - setAlignment(Pos.CENTER); - } - else - { - setStyle("-fx-background: transparent"); - setText(null); - setGraphic(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/SmallCategoryCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/SmallCategoryCell.java deleted file mode 100644 index ad70f8c2b..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/SmallCategoryCell.java +++ /dev/null @@ -1,52 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.layout.HBox; -import javafx.scene.paint.Color; -import tools.ConvertTo; - -public class SmallCategoryCell extends ListCell<Category> -{ - private final double HEIGHT = 30.0; - - @Override - protected void updateItem(Category item, boolean empty) - { - super.updateItem(item, empty); - - if(!empty) - { - HBox hbox = new HBox(); - - Label labelCircle = new Label(item.getName().substring(0, 1).toUpperCase()); - labelCircle.setPrefWidth(HEIGHT); - labelCircle.setPrefHeight(HEIGHT); - labelCircle.setAlignment(Pos.CENTER); - String textColor = ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(Color.web(item.getColor()))); - labelCircle.setStyle("-fx-background-color: " + item.getColor() + "; -fx-background-radius: 50%; -fx-text-fill: " + textColor + "; -fx-font-weight: bold; -fx-font-size: 15;"); - hbox.getChildren().add(labelCircle); - - Label labelName = new Label(item.getName()); - labelName.setPrefHeight(HEIGHT); - labelName.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #212121"); - labelName.setAlignment(Pos.CENTER); - hbox.getChildren().add(labelName); - HBox.setMargin(labelName, new Insets(0, 0, 0, 20)); - - hbox.setPadding(new Insets(3)); - setStyle("-fx-background: transparent; -fx-border-color: #545454; -fx-border-width: 0 0 1 0"); - setGraphic(hbox); - setAlignment(Pos.CENTER); - } - else - { - setStyle("-fx-background: transparent"); - setText(null); - setGraphic(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/report/table/ReportTableRatingCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/report/table/ReportTableRatingCell.java deleted file mode 100644 index e8bda03af..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/report/table/ReportTableRatingCell.java +++ /dev/null @@ -1,36 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells.report.table; - -import de.deadlocker8.budgetmaster.logic.report.ReportItem; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.geometry.Pos; -import javafx.scene.control.Label; -import javafx.scene.control.TableCell; - -public class ReportTableRatingCell extends TableCell<ReportItem, Integer> -{ - @Override - protected void updateItem(Integer item, boolean empty) - { - if(!empty) - { - Label labelRepeating = new Label(); - if(item > 0) - { - labelRepeating.setGraphic(new FontIcon(FontIconType.PLUS, 14, Colors.TEXT)); - } - else - { - labelRepeating.setGraphic(new FontIcon(FontIconType.MINUS, 14, Colors.TEXT)); - } - labelRepeating.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #212121"); - labelRepeating.setAlignment(Pos.CENTER); - setGraphic(labelRepeating); - } - else - { - setGraphic(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/report/table/ReportTableRepeatingCell.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/report/table/ReportTableRepeatingCell.java deleted file mode 100644 index a9841bc98..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/cells/report/table/ReportTableRepeatingCell.java +++ /dev/null @@ -1,37 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.cells.report.table; - -import de.deadlocker8.budgetmaster.logic.report.ReportItem; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.geometry.Pos; -import javafx.scene.control.Label; -import javafx.scene.control.TableCell; -import javafx.scene.paint.Color; - -public class ReportTableRepeatingCell extends TableCell<ReportItem, Boolean> -{ - @Override - protected void updateItem(Boolean item, boolean empty) - { - if(!empty) - { - Label labelRepeating = new Label(); - if(item) - { - labelRepeating.setGraphic(new FontIcon(FontIconType.CALENDAR, 16, Colors.TEXT)); - } - else - { - labelRepeating.setGraphic(new FontIcon(FontIconType.CALENDAR, 16, Color.TRANSPARENT)); - } - labelRepeating.setStyle("-fx-font-weight: bold; -fx-font-size: 14; -fx-text-fill: #212121"); - labelRepeating.setAlignment(Pos.CENTER); - setGraphic(labelRepeating); - } - else - { - setGraphic(null); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/colorPick/ColorPickController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/colorPick/ColorPickController.java deleted file mode 100644 index 9b3fa2c26..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/colorPick/ColorPickController.java +++ /dev/null @@ -1,141 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.colorPick; - -import java.util.function.Consumer; - -import javafx.event.ActionEvent; -import javafx.fxml.FXML; -import javafx.scene.control.Button; -import javafx.scene.control.Label; -import javafx.scene.control.Slider; -import javafx.scene.control.TextField; -import javafx.scene.control.TextFormatter; -import javafx.scene.paint.Color; -import javafx.stage.Stage; -import tools.ConvertTo; - -public class ColorPickController -{ - @FXML private Label labelColor; - @FXML private Slider sliderRed; - @FXML private TextField textFieldRed; - @FXML private Slider sliderGreen; - @FXML private TextField textFieldGreen; - @FXML private Slider sliderBlue; - @FXML private TextField textFieldBlue; - @FXML private TextField textFieldHex; - @FXML private Button buttonSave; - @FXML private Button buttonCancel; - - private Stage stage; - private Consumer<Color> finish; - - public void init(Stage stage, Consumer<Color> finish) - { - this.stage = stage; - this.finish = finish; - - initializeSliderAndTextField(sliderRed, textFieldRed); - initializeSliderAndTextField(sliderGreen, textFieldGreen); - initializeSliderAndTextField(sliderBlue, textFieldBlue); - - initializeTextFieldHex(); - - updatePreview(); - } - - private void initializeSliderAndTextField(Slider slider, TextField textField) - { - initializeSlider(slider, textField); - initializeTextField(slider, textField); - } - - private void initializeSlider(Slider slider, TextField textField) - { - slider.valueProperty().addListener((observer, oldValue, newValue)->{ - textField.setText(String.valueOf(newValue.intValue())); - textFieldHex.setText(ConvertTo.toRGBHexWithoutOpacity(getColor())); - updatePreview(); - }); - } - - private void initializeTextField(Slider slider, TextField textField) - { - textField.setTextFormatter(new TextFormatter<>(c -> { - if(c.getControlNewText().isEmpty()) - { - return c; - } - - if(c.getControlNewText().matches("[0-9]*")) - { - if(Double.parseDouble(c.getControlNewText()) > 255) - { - return null; - } - else - { - return c; - } - } - else - { - return null; - } - })); - - textField.textProperty().addListener((observer, oldValue, newValue)->{ - double value; - if(newValue.isEmpty()) - { - value = 0; - } - else - { - value = Double.parseDouble(newValue); - } - slider.setValue(value); - textFieldHex.setText(ConvertTo.toRGBHexWithoutOpacity(getColor())); - }); - } - - private void initializeTextFieldHex() - { - textFieldHex.textProperty().addListener((observer, oldValue, newValue)->{ - try - { - Color hexColor = Color.web(newValue); - - sliderRed.setValue((int)(hexColor.getRed()*255)); - sliderGreen.setValue((int)(hexColor.getGreen()*255)); - sliderBlue.setValue((int)(hexColor.getBlue()*255)); - } - catch(Exception e) - { - - } - }); - } - - private Color getColor() - { - return Color.rgb((int)sliderRed.getValue(), (int)sliderGreen.getValue(), (int)sliderBlue.getValue()); - } - - private void updatePreview() - { - labelColor.setStyle("-fx-border-color: #000000; -fx-border-width: 1; -fx-background-color: " + ConvertTo.toRGBHex(getColor())); - } - - @FXML - void cancel(ActionEvent event) - { - stage.close(); - } - - @FXML - void save(ActionEvent event) - { - finish.accept(getColor()); - stage.close(); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/colorPick/ColorView.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/colorPick/ColorView.java deleted file mode 100644 index 457d866f0..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/colorPick/ColorView.java +++ /dev/null @@ -1,167 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.colorPick; - -import java.util.ArrayList; -import java.util.function.Consumer; - -import de.deadlocker8.budgetmasterclient.ui.controller.NewCategoryController; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.fxml.FXMLLoader; -import javafx.geometry.Insets; -import javafx.scene.Node; -import javafx.scene.Parent; -import javafx.scene.Scene; -import javafx.scene.control.Button; -import javafx.scene.image.Image; -import javafx.scene.layout.GridPane; -import javafx.scene.paint.Color; -import javafx.scene.shape.Rectangle; -import javafx.stage.Modality; -import javafx.stage.Stage; -import logger.Logger; -import tools.ConvertTo; -import tools.Localization; - -public class ColorView extends GridPane -{ - private Node lastSelectedNode; - private Color colorPickerColor; - private Button buttonColorPicker; - private FontIcon icon; - - public ColorView(Color startColor, ArrayList<Color> colors, NewCategoryController controller, Consumer<Color> finish) - { - colors.add(Color.TRANSPARENT); - - double size = Math.sqrt(colors.size()); - int iSize = (int)size; - if(size != iSize) - { - iSize++; - } - - setVgap(5); - setHgap(5); - setPadding(new Insets(5)); - - colorPickerColor = Color.WHITE; - - int index = 0; - for(int y = 0; y < iSize; y++) - { - for(int x = 0; x < iSize; x++) - { - if(index < colors.size()) - { - Color color = colors.get(index++); - - if(color == Color.TRANSPARENT) - { - buttonColorPicker = new Button(); - buttonColorPicker.setPrefHeight(40); - buttonColorPicker.setPrefWidth(40); - - if(!colors.contains(startColor)) - { - colorPickerColor = startColor; - updateColorPickerCSS(buttonColorPicker, true, startColor); - } - - icon = new FontIcon(FontIconType.PLUS); - icon.setSize(20); - icon.setStyle("-fx-text-fill: " + ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(colorPickerColor))); - buttonColorPicker.setGraphic(icon); - - buttonColorPicker.setOnAction((event)->{ - try - { - FXMLLoader loader = new FXMLLoader(getClass().getClassLoader().getResource("de/deadlocker8/budgetmaster/ui/colorPick/ColorPickGUI.fxml")); - loader.setResources(Localization.getBundle()); - Parent root = (Parent)loader.load(); - - Scene scene = new Scene(root, 500, 225); - Stage stage = new Stage(); - - ((ColorPickController)loader.getController()).init(stage, (finishColor)->{ - colorPickerColor = finishColor; - updateColorPickerCSS(buttonColorPicker, true, finishColor); - if(lastSelectedNode instanceof Rectangle) - { - ((Rectangle)lastSelectedNode).getStrokeDashArray().clear(); - } - lastSelectedNode = buttonColorPicker; - icon.setStyle("-fx-text-fill: " + ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(finishColor))); - finish.accept(finishColor); - }); - - stage.setResizable(false); - stage.initModality(Modality.APPLICATION_MODAL); - stage.setScene(scene); - stage.getIcons().add(new Image("/de/deadlocker8/budgetmaster/icon.png")); - stage.show(); - } - catch(Exception e) - { - Logger.error(e); - } - }); - - add(buttonColorPicker, x, y); - } - else - { - Rectangle rectangle = createRectangle(startColor, color); - - // EventHandler - rectangle.setOnMouseReleased(event -> { - if(lastSelectedNode instanceof Rectangle) - { - ((Rectangle)lastSelectedNode).getStrokeDashArray().clear(); - } - else - { - updateColorPickerCSS(buttonColorPicker, false, Color.WHITE); - icon.setStyle("-fx-text-fill: " + ConvertTo.toRGBHex(ConvertTo.getAppropriateTextColor(Color.WHITE))); - } - rectangle.getStrokeDashArray().add(3.0); - lastSelectedNode = rectangle; - - finish.accept(color); - }); - - add(rectangle, x, y); - } - } - } - } - - updateColorPickerCSS(buttonColorPicker, true, colorPickerColor); - } - - private Rectangle createRectangle(Color startColor, Color color) - { - Rectangle rectangle = new Rectangle(40, 40); - rectangle.setFill(color); - rectangle.getStyleClass().add("color-view-item"); - - // dotted border - if(ConvertTo.toRGBHex(color).equals(ConvertTo.toRGBHex(startColor))) - { - lastSelectedNode = rectangle; - rectangle.getStrokeDashArray().add(3.0); - } - - return rectangle; - } - - private void updateColorPickerCSS(Node button, boolean dashed, Color backgroundColor) - { - String css = "-fx-background-radius: 4; -fx-border-width: 1.8; -fx-border-color: black; -fx-border-radius: 4; -fx-background-color: " + ConvertTo.toRGBHex(backgroundColor) + ";"; - if(dashed) - { - css += " -fx-border-style: dashed;"; - } - - button.setStyle(css); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandBundle.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandBundle.java deleted file mode 100644 index b200c8ede..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandBundle.java +++ /dev/null @@ -1,53 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine; - -import java.text.MessageFormat; -import java.util.ResourceBundle; - -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; - -public class CommandBundle -{ - private CommandLineController controller; - private ResourceBundle languageBundle; - private Controller parentController; - - public CommandBundle(Controller parentController) - { - this.parentController = parentController; - } - - public CommandLineController getController() - { - return controller; - } - - public ResourceBundle getLanguageBundle() - { - return languageBundle; - } - - public String getString(String key) - { - return languageBundle.getString(key); - } - - public String getString(String key, Object... args) - { - return MessageFormat.format(languageBundle.getString(key), args); - } - - public void setController(CommandLineController controller) - { - this.controller = controller; - } - - public void setLanguageBundle(ResourceBundle languageBundle) - { - this.languageBundle = languageBundle; - } - - public Controller getParentController() - { - return parentController; - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandLine.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandLine.java deleted file mode 100644 index eba15f5f9..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandLine.java +++ /dev/null @@ -1,126 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine; - -import java.io.IOException; -import java.util.ArrayList; -import java.util.ResourceBundle; - -import javafx.fxml.FXMLLoader; -import javafx.scene.Parent; -import javafx.scene.Scene; -import javafx.scene.image.Image; -import javafx.stage.Modality; -import javafx.stage.Stage; - -public class CommandLine -{ - private Stage owner; - private Stage newStage; - private Image icon; - private ResourceBundle languageBundle; - public ArrayList<HistoryEntry> globalHistory = new ArrayList<>(); - public int lastShownCommand = 1; - public ArrayList<HistoryEntry> history = new ArrayList<>(); - private final String promptText = ">>>"; - private CommandBundle bundle; - - public CommandLine(Stage owner, Image icon, ResourceBundle languageBundle, CommandBundle commandBundle) - { - this.owner = owner; - this.icon = icon; - this.languageBundle = languageBundle; - this.bundle = commandBundle; - } - - public Stage getOwner() - { - return owner; - } - - public Stage getStage() - { - return newStage; - } - - public Image getIcon() - { - return icon; - } - - public int getLastShwonCommand() - { - return lastShownCommand; - } - - public String getPromptText() - { - return promptText; - } - - public ResourceBundle getLanguageBundle() - { - return languageBundle; - } - - public CommandBundle getBundle() - { - return bundle; - } - - public void showCommandLine(String title, double width, double height, double minWidth, double minHeight, double positionX, double positionY, boolean dark) throws IOException - { - if(newStage != null) - { - if(newStage.isShowing()) - { - return; - } - } - - FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("/de/deadlocker8/budgetmaster/ui/commandLine/CommandLineGUI.fxml")); - - Parent root = (Parent)fxmlLoader.load(); - newStage = new Stage(); - newStage.setScene(new Scene(root, width, height)); - newStage.setResizable(true); - newStage.setTitle(title); - newStage.initOwner(owner); - - newStage.setMinWidth(minWidth); - newStage.setMinHeight(minHeight); - if(positionX != -1) - { - newStage.setX(positionX); - } - if(positionY != -1) - { - newStage.setY(positionY); - } - - if(dark) - { - root.setStyle("-fx-base: rgb(50, 50, 50); -fx-background: rgb(50, 50, 50); -fx-control-inner-background: rgb(10, 10, 10);"); - } - - if(icon != null) - { - newStage.getIcons().add(icon); - } - - CommandLineController newController = fxmlLoader.getController(); - newController.init(this); - - newStage.initModality(Modality.NONE); - newStage.show(); - } - - public void closeCommandLine() - { - if(newStage != null) - { - if(newStage.isShowing()) - { - newStage.close(); - } - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandLineController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandLineController.java deleted file mode 100644 index c84fec6b9..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/CommandLineController.java +++ /dev/null @@ -1,246 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine; - -import java.util.ArrayList; -import java.util.Comparator; - -import de.deadlocker8.budgetmasterclient.ui.commandLine.commands.Command; -import de.deadlocker8.budgetmasterclient.ui.commandLine.commands.PossibleCommands; -import javafx.application.Platform; -import javafx.event.EventHandler; -import javafx.fxml.FXML; -import javafx.scene.control.TextArea; -import javafx.scene.control.TextField; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyEvent; - -public class CommandLineController -{ - @FXML private TextArea textareaHistory; - @FXML private TextField textfieldInput; - - private CommandLine commandLine; - - public void init(CommandLine commandLine) - { - this.commandLine = commandLine; - - commandLine.getBundle().setController(this); - commandLine.getBundle().setLanguageBundle(commandLine.getLanguageBundle()); - - textareaHistory.setEditable(false); - textareaHistory.setWrapText(true); - - textfieldInput.setOnKeyPressed(new EventHandler<KeyEvent>() - { - @Override - public void handle(KeyEvent event) - { - if(event.getCode().equals(KeyCode.ENTER)) - { - parse(); - } - - if(event.getCode().equals(KeyCode.UP)) - { - showLastCommand(); - } - - if(event.getCode().equals(KeyCode.ESCAPE)) - { - clearConsole(); - } - - if(event.getCode().equals(KeyCode.TAB)) - { - autocomplete(); - event.consume(); - } - } - }); - - printPrompt(); - } - - public void printPrompt() - { - setConsoleText(); - clearConsole(); - } - - public void print(String message) - { - commandLine.history.add(new HistoryEntry(HistoryType.MESSAGE, message)); - setConsoleText(); - printPrompt(); - } - - public void clearHistoryLog() - { - textareaHistory.setText(""); - } - - public void clearHistory() - { - commandLine.history = new ArrayList<>(); - } - - public void clearConsole() - { - textfieldInput.setText(""); - textfieldInput.requestFocus(); - } - - private void setConsoleText() - { - clearHistoryLog(); - - StringBuilder sb = new StringBuilder(); - boolean printedLastEntry = false; - for(int i = 0; i < commandLine.history.size(); i++) - { - HistoryEntry currentEntry = commandLine.history.get(i); - if(currentEntry.getType().equals(HistoryType.COMMAND)) - { - if(printedLastEntry) - { - sb.append("\n"); - } - sb.append(commandLine.getPromptText()); - sb.append(" "); - sb.append(currentEntry.getText()); - printedLastEntry = true; - } - else - { - if(i != 0) - { - sb.append("\n"); - } - sb.append(currentEntry.getText()); - printedLastEntry = true; - } - } - - textareaHistory.setText(sb.toString()); - textareaHistory.positionCaret(sb.toString().length()); - } - - private boolean executeCommand(String[] command) - { - for(Command cmd : PossibleCommands.possibleCommands) - { - if(cmd.getKeyword().equals(command[0])) - { - cmd.execute(command, commandLine.getBundle()); - return true; - } - } - return false; - } - - private void parse() - { - String input = textfieldInput.getText().replace("\n", ""); - - if(input.equals("")) - { - printPrompt(); - return; - } - - commandLine.globalHistory.add(new HistoryEntry(HistoryType.COMMAND, input)); - commandLine.history.add(new HistoryEntry(HistoryType.COMMAND, input)); - commandLine.lastShownCommand = - 1; - - String[] command = input.split(" "); - if( ! executeCommand(command)) - { - print(commandLine.getLanguageBundle().getString("error.unknown.command")); - } - else - { - printPrompt(); - } - } - - private void showLastCommand() - { - if(commandLine.globalHistory.size() > 0) - { - if(commandLine.lastShownCommand <= 0) - { - textfieldInput.setText(commandLine.globalHistory.get(commandLine.globalHistory.size() - 1).getText()); - commandLine.lastShownCommand = commandLine.globalHistory.size() - 1; - } - else - { - textfieldInput.setText(commandLine.globalHistory.get(commandLine.lastShownCommand - 1).getText()); - commandLine.lastShownCommand--; - } - - Platform.runLater(()-> - { - textfieldInput.positionCaret(textfieldInput.getText().length()); - }); - } - } - - private void autocomplete() - { - String input = textfieldInput.getText().replace("\n", ""); - - if(input.equals("")) - { - return; - } - - ArrayList<Command> commands = PossibleCommands.possibleCommands; - - //filter possible commands - ArrayList<Command> filteredCommands = new ArrayList<>(); - for(Command currentCommand : commands) - { - if(currentCommand.getKeyword().startsWith(input)) - { - filteredCommands.add(currentCommand); - } - } - - //sort commands alphabetically - filteredCommands.sort(new Comparator<Command>() - { - @Override - public int compare(Command o1, Command o2) - { - return o1.keyword.compareTo(o2.keyword); - } - }); - - if(filteredCommands.size() == 1) - { - textfieldInput.setText(filteredCommands.get(0).getKeyword()); - } - else - { - StringBuilder sb = new StringBuilder(); - sb.append(">>> Possible commands for \"" + input + "\":\n"); - for(int i = 0; i < filteredCommands.size(); i++) - { - sb.append(filteredCommands.get(i).keyword); - if(i != (filteredCommands.size()-1)) - { - sb.append("\n"); - } - } - - print(sb.toString()); - - textfieldInput.setText(input); - } - - Platform.runLater(()-> - { - textfieldInput.positionCaret(textfieldInput.getText().length()); - }); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/HistoryEntry.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/HistoryEntry.java deleted file mode 100644 index 3454e2876..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/HistoryEntry.java +++ /dev/null @@ -1,28 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine; - -public class HistoryEntry -{ - private HistoryType type; - private String text; - - public HistoryEntry(HistoryType type, String text) - { - this.type = type; - this.text = text; - } - - public HistoryType getType() - { - return type; - } - - public String getText() - { - return text; - } - - public String toString() - { - return "HistoryEntry [type=" + type + ", text=" + text + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/HistoryType.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/HistoryType.java deleted file mode 100644 index 3b6f3c878..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/HistoryType.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine; - -public enum HistoryType -{ - COMMAND, MESSAGE -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/Command.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/Command.java deleted file mode 100644 index c2ad67b0c..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/Command.java +++ /dev/null @@ -1,39 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; - -public abstract class Command -{ - public String keyword; - public int numberOfParams; - public String helptText; - - public String getKeyword() - { - return keyword; - } - - public int getNumberOfParams() - { - return numberOfParams; - } - - public String getHelpText() - { - return keyword; - } - - public boolean isValid(String[] command) - { - if((command.length - 1) == numberOfParams) - { - return true; - } - else - { - return false; - } - } - - public abstract void execute(String[] command, CommandBundle bundle); -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandClear.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandClear.java deleted file mode 100644 index f9aa8f8aa..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandClear.java +++ /dev/null @@ -1,31 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; - -/** - * Clears the history log and console - */ -public class CommandClear extends Command -{ - public CommandClear() - { - super.keyword = "clear"; - super.numberOfParams = 0; - super.helptText = "help.clear"; - } - - @Override - public void execute(String[] command, CommandBundle bundle) - { - if(!isValid(command)) - { - bundle.getController().print(bundle.getString("error.invalid.arguments")); - return; - } - - bundle.getController().clearHistory(); - bundle.getController().clearHistoryLog(); - bundle.getController().clearConsole(); - bundle.getController().printPrompt(); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandDelete.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandDelete.java deleted file mode 100644 index 2417ac834..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandDelete.java +++ /dev/null @@ -1,50 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; -import logger.Logger; - -public class CommandDelete extends Command -{ - public CommandDelete() - { - super.keyword = "delete"; - super.numberOfParams = 1; - super.helptText = "help.delete"; - } - - @Override - public void execute(String[] command, CommandBundle bundle) - { - if(!isValid(command)) - { - bundle.getController().print(bundle.getString("error.invalid.arguments")); - return; - } - - if(command[1].equals("log-client")) - { - Logger.clearLogFile(); - bundle.getController().print(bundle.getString("delete.success", "client logfile")); - return; - } - - if(command[1].equals("log-server")) - { - try - { - ServerConnection connection = new ServerConnection(bundle.getParentController().getSettings()); - connection.deleteLog(); - bundle.getController().print(bundle.getString("delete.success", "server logfile")); - } - catch(Exception e) - { - bundle.getController().print(bundle.getString("delete.error.connection")); - } - - return; - } - - bundle.getController().print(bundle.getString("error.invalid.parameter", command[1], keyword)); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandHelp.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandHelp.java deleted file mode 100644 index 88680e5ed..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandHelp.java +++ /dev/null @@ -1,47 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import java.util.MissingResourceException; - -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; - -/** - * prints help for given command - */ -public class CommandHelp extends Command -{ - public CommandHelp() - { - super(); - super.keyword = "help"; - super.numberOfParams = 1; - super.helptText = "help.help"; - } - - @Override - public void execute(String[] command, CommandBundle bundle) - { - if(!isValid(command)) - { - bundle.getController().print(bundle.getString("error.invalid.arguments")); - return; - } - - for(Command cmd : PossibleCommands.possibleCommands) - { - if(cmd.getKeyword().equals(command[1])) - { - try - { - bundle.getController().print(bundle.getString("help." + command[1])); - } - catch(MissingResourceException e) - { - bundle.getController().print(bundle.getString("error.general")); - } - return; - } - } - - bundle.getController().print(bundle.getString("error.no.help")); - } -} diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandInfo.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandInfo.java deleted file mode 100644 index aca29599f..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandInfo.java +++ /dev/null @@ -1,67 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerInformation; -import de.deadlocker8.budgetmaster.logic.updater.VersionInformation; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; -import tools.Localization; - -/** - * prints help for given command - */ -public class CommandInfo extends Command -{ - public CommandInfo() - { - super(); - super.keyword = "info"; - super.numberOfParams = 1; - super.helptText = "help.info"; - } - - @Override - public void execute(String[] command, CommandBundle bundle) - { - if(!isValid(command)) - { - bundle.getController().print(bundle.getString("error.invalid.arguments")); - return; - } - - if(command[1].equals("client")) - { - String text = Localization.getString(Strings.APP_NAME) - + " v" + Localization.getString(Strings.VERSION_NAME) - + " (" + Localization.getString(Strings.VERSION_CODE) - + ") from " + Localization.getString(Strings.VERSION_DATE); - bundle.getController().print(text); - return; - } - - if(command[1].equals("server")) - { - try - { - ServerConnection connection = new ServerConnection(bundle.getParentController().getSettings()); - ServerInformation serverInfo = connection.getServerInfo(); - VersionInformation versionInfo = serverInfo.getVersionInfo(); - - String text = "BudgetMasterServer v" + versionInfo.getVersionName() + " (" + versionInfo.getVersionCode() + ") from " + versionInfo.getDate() + "\n" - + "Listening on port " + serverInfo.getServerPort() + "\n" - + "Connected with user \"" + serverInfo.getDatabaseUsername() + "\" to database \"" + serverInfo.getDatabaseName() + "@" + serverInfo.getDatabaseUrl() + "\"\n" - + "Keystore location is: \"" + serverInfo.getKeystorePath() + "\""; - - bundle.getController().print(text); - } - catch(Exception e) - { - bundle.getController().print(bundle.getString("delete.error.connection")); - } - - return; - } - - bundle.getController().print(bundle.getString("error.invalid.parameter", command[1], keyword)); - } -} diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandList.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandList.java deleted file mode 100644 index 6ea40040c..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandList.java +++ /dev/null @@ -1,55 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import java.util.ArrayList; -import java.util.Comparator; - -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; - -/** - * Lists all available commands - */ -public class CommandList extends Command -{ - public CommandList() - { - super(); - super.keyword = "list"; - super.numberOfParams = 0; - super.helptText = "help.list"; - } - - @Override - public void execute(String[] command, CommandBundle bundle) - { - if(!isValid(command)) - { - bundle.getController().print(bundle.getString("error.invalid.arguments")); - return; - } - - //sort possible commands alphabetically - ArrayList<Command> commands = PossibleCommands.possibleCommands; - commands.sort(new Comparator<Command>() - { - @Override - public int compare(Command o1, Command o2) - { - return o1.keyword.compareTo(o2.keyword); - } - }); - - //loop through all possible commands and print keyword - StringBuilder sb = new StringBuilder(); - sb.append("All possible commands:\n"); - for(int i = 0; i < commands.size(); i++) - { - sb.append(commands.get(i).keyword); - if(i != (commands.size()-1)) - { - sb.append("\n"); - } - } - - bundle.getController().print(sb.toString()); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandOpen.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandOpen.java deleted file mode 100644 index bf4ef69b8..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandOpen.java +++ /dev/null @@ -1,48 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import java.awt.Desktop; -import java.io.File; -import java.io.IOException; -import java.nio.file.Paths; - -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; -import tools.Localization; -import tools.PathUtils; - -public class CommandOpen extends Command -{ - public CommandOpen() - { - super.keyword = "open"; - super.numberOfParams = 1; - super.helptText = "help.open"; - } - - @Override - public void execute(String[] command, CommandBundle bundle) - { - if(!isValid(command)) - { - bundle.getController().print(bundle.getString("error.invalid.arguments")); - return; - } - - if(!command[1].equals("settings")) - { - bundle.getController().print(bundle.getString("error.invalid.parameter", command[1], keyword)); - return; - } - - try - { - File folder = Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER)).toFile(); - Desktop.getDesktop().open(folder); - bundle.getController().print(bundle.getString("open.success", folder.getAbsolutePath())); - } - catch(IOException e) - { - bundle.getController().print(e.getMessage()); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandShortcuts.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandShortcuts.java deleted file mode 100644 index bb99c3e1e..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandShortcuts.java +++ /dev/null @@ -1,23 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; - -/** - * Lists all available Shortcuts - */ -public class CommandShortcuts extends Command -{ - public CommandShortcuts() - { - super.keyword = "shortcuts"; - super.numberOfParams = 0; - super.helptText = "help.shortcuts"; - } - - @Override - public void execute(String[] command, CommandBundle bundle) - { - bundle.getController().print("Available Shortcuts:"); - bundle.getController().print(bundle.getString("info.shortcuts")); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandSwitch.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandSwitch.java deleted file mode 100644 index de02b9ba1..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/CommandSwitch.java +++ /dev/null @@ -1,71 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import java.io.IOException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; - -import de.deadlocker8.budgetmaster.logic.utils.FileHelper; -import de.deadlocker8.budgetmaster.logic.utils.LanguageType; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.RestartHandler; -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; -import tools.Localization; -import tools.PathUtils; - -public class CommandSwitch extends Command -{ - public CommandSwitch() - { - super.keyword = "switch"; - super.numberOfParams = 0; - super.helptText = "help.switch"; - } - - @Override - public void execute(String[] command, CommandBundle bundle) - { - if(!isValid(command)) - { - bundle.getController().print(bundle.getString("error.invalid.arguments")); - return; - } - - Path currentSettingsFile = Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/settings.json"); - Path secondSettingsFile = Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/_settings.json"); - - if(secondSettingsFile.toFile().exists()) - { - try - { - Path temp = Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/__settings.json"); - Files.move(currentSettingsFile, temp); - Files.move(secondSettingsFile, currentSettingsFile); - Files.move(temp, secondSettingsFile); - } - catch(IOException e) - { - bundle.getController().print(bundle.getString("switch.error")); - } - } - else - { - bundle.getController().print(bundle.getString("switch.new")); - try - { - Files.copy(currentSettingsFile, secondSettingsFile); - } - catch(IOException e) - { - bundle.getController().print(bundle.getString("switch.error")); - } - } - - LanguageType previousLanguage = bundle.getParentController().getSettings().getLanguage(); - bundle.getParentController().setSettings(FileHelper.loadSettings()); - bundle.getParentController().getSettingsController().prefill(); - RestartHandler restartHandler = new RestartHandler(bundle.getParentController()); - restartHandler.handleRestart(previousLanguage); - bundle.getController().print(bundle.getString("switch.success")); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/PossibleCommands.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/PossibleCommands.java deleted file mode 100644 index 0ecfd5ea3..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/commandLine/commands/PossibleCommands.java +++ /dev/null @@ -1,18 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.commandLine.commands; - -import java.util.ArrayList; -import java.util.Arrays; - -public class PossibleCommands -{ - public static final ArrayList<Command> possibleCommands = new ArrayList<>(Arrays.asList( - new CommandList(), - new CommandHelp(), - new CommandClear(), - new CommandShortcuts(), - new CommandOpen(), - new CommandDelete(), - new CommandInfo(), - new CommandSwitch() - )); -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/BaseController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/BaseController.java deleted file mode 100644 index d55d410e1..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/BaseController.java +++ /dev/null @@ -1,54 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.io.IOException; -import java.util.ResourceBundle; - -import javafx.fxml.FXMLLoader; -import javafx.scene.Parent; -import javafx.scene.Scene; -import javafx.stage.Stage; -import logger.Logger; - -public class BaseController -{ - private Parent parent; - private Stage stage; - - public void load(String fxmlFileName, ResourceBundle resourceBundle) - { - try - { - FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource(fxmlFileName)); - if(resourceBundle != null) - { - fxmlLoader.setResources(resourceBundle); - } - fxmlLoader.setController(this); - parent = (Parent)fxmlLoader.load(); - } - catch(IOException e) - { - Logger.error(e); - } - - createNewStage(); - initStage(stage); - init(); - } - - public Stage getStage() - { - return stage; - } - - public void createNewStage() - { - Scene scene = new Scene(parent); - stage = new Stage(); - stage.setScene(scene); - } - - public void initStage(Stage stage){}; - - public void init() {}; -} diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/CategoryController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/CategoryController.java deleted file mode 100644 index 7c58c7dd2..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/CategoryController.java +++ /dev/null @@ -1,126 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Refreshable; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.cells.CategoryCell; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.application.Platform; -import javafx.beans.value.ChangeListener; -import javafx.fxml.FXML; -import javafx.scene.control.Button; -import javafx.scene.control.Label; -import javafx.scene.control.ListView; -import javafx.scene.input.MouseEvent; -import javafx.scene.layout.AnchorPane; -import javafx.scene.paint.Color; -import logger.Logger; -import tools.ConvertTo; -import tools.Localization; - -public class CategoryController extends BaseController implements Refreshable, Styleable -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private Button buttonCategory; - @FXML private ListView<Category> listView; - - private Controller controller; - - public void init(Controller controller) - { - this.controller = controller; - - CategoryController thisController = this; - listView.setCellFactory(param -> { - CategoryCell cell = new CategoryCell(thisController); - cell.addEventFilter(MouseEvent.MOUSE_CLICKED, event -> { - if(event.getClickCount() == 2) - { - // don't allow editing of category "none" - if(cell.getItem().getID() != 1) - { - newCategory(true, cell.getItem()); - } - } - }); - return cell; - }); - - listView.getSelectionModel().selectedIndexProperty().addListener((ChangeListener<Number>)(observable, oldValue, newValue) -> Platform.runLater(() -> listView.getSelectionModel().select(-1))); - - Label labelPlaceholder = new Label(Localization.getString(Strings.CATEGORIES_PLACEHOLDER)); - labelPlaceholder.setStyle("-fx-font-size: 16"); - listView.setPlaceholder(labelPlaceholder); - - applyStyle(); - - refreshListView(); - } - - public void refreshListView() - { - listView.getItems().clear(); - - if(controller.getCategoryHandler() != null) - { - ArrayList<Category> categories = controller.getCategoryHandler().getCategoriesWithoutNone(); - if(categories != null && categories.size() > 0) - { - listView.getItems().setAll(categories); - } - } - } - - public void createNewCategory() - { - newCategory(false, null); - } - - public void newCategory(boolean edit, Category category) - { - new NewCategoryController(controller.getStage(), controller, this, edit, category); - } - - public void deleteCategory(int ID) - { - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - connection.deleteCategory(ID); - controller.refresh(controller.getFilterSettings()); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - } - - public Controller getController() - { - return controller; - } - - @Override - public void refresh() - { - refreshListView(); - } - - @Override - public void applyStyle() - { - buttonCategory.setGraphic(new FontIcon(FontIconType.PLUS, 18, Color.WHITE)); - - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - buttonCategory.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ChartController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ChartController.java deleted file mode 100644 index 0dbc75472..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ChartController.java +++ /dev/null @@ -1,297 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.io.File; -import java.time.LocalDate; -import java.util.ArrayList; - -import org.joda.time.DateTime; -import org.joda.time.format.DateTimeFormat; - -import de.deadlocker8.budgetmaster.logic.charts.CategoriesChart; -import de.deadlocker8.budgetmaster.logic.charts.CategoryInOutSum; -import de.deadlocker8.budgetmaster.logic.charts.ChartExportable; -import de.deadlocker8.budgetmaster.logic.charts.LegendType; -import de.deadlocker8.budgetmaster.logic.charts.MonthBarChart; -import de.deadlocker8.budgetmaster.logic.charts.MonthInOutSum; -import de.deadlocker8.budgetmaster.logic.charts.MonthLineChart; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Refreshable; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.utils.LoadingModal; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.application.Platform; -import javafx.collections.FXCollections; -import javafx.fxml.FXML; -import javafx.scene.control.Accordion; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.ComboBox; -import javafx.scene.control.DateCell; -import javafx.scene.control.DatePicker; -import javafx.scene.control.RadioButton; -import javafx.scene.control.ToggleGroup; -import javafx.scene.layout.AnchorPane; -import javafx.scene.layout.Priority; -import javafx.scene.layout.VBox; -import javafx.scene.paint.Color; -import logger.Logger; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.Localization; -import tools.Worker; - -public class ChartController implements Refreshable, Styleable -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private Accordion accordion; - @FXML private DatePicker datePickerStart; - @FXML private VBox vboxChartCategories; - @FXML private DatePicker datePickerEnd; - @FXML private VBox vboxChartMonth; - @FXML private Button buttonChartCategoriesShow; - @FXML private Button buttonChartCategoriesExport; - @FXML private ComboBox<String> comboBoxStartMonth; - @FXML private ComboBox<String> comboBoxStartYear; - @FXML private ComboBox<String> comboBoxEndMonth; - @FXML private ComboBox<String> comboBoxEndYear; - @FXML private Button buttonChartMonthShow; - @FXML private Button buttonChartMonthExport; - @FXML private RadioButton radioButtonBars; - @FXML private RadioButton radioButtonLines; - - private Controller controller; - private File lastExportPath; - - private CategoriesChart categoriesChart; - private MonthLineChart monthLineChart; - private MonthBarChart monthBarChart; - - public void init(Controller controller) - { - this.controller = controller; - - datePickerEnd.setDayCellFactory(param -> new DateCell() - { - @Override - public void updateItem(LocalDate item, boolean empty) - { - super.updateItem(item, empty); - if(item.isBefore(datePickerStart.getValue().plusDays(1))) - { - setDisable(true); - setStyle("-fx-background-color: #ffc0cb;"); - } - } - }); - - comboBoxStartMonth.setItems(FXCollections.observableArrayList(Helpers.getMonthList())); - comboBoxStartYear.setItems(FXCollections.observableArrayList(Helpers.getYearList())); - comboBoxEndMonth.setItems(FXCollections.observableArrayList(Helpers.getMonthList())); - comboBoxEndYear.setItems(FXCollections.observableArrayList(Helpers.getYearList())); - - final ToggleGroup toggleGroup = new ToggleGroup(); - radioButtonBars.setToggleGroup(toggleGroup); - radioButtonBars.setSelected(true); - radioButtonLines.setToggleGroup(toggleGroup); - - accordion.setExpandedPane(accordion.getPanes().get(0)); - vboxChartMonth.setSpacing(15); - - applyStyle(); - } - - public void buttonChartCategoriesShow() - { - chartCategoriesShow(LegendType.NORMAL); - } - - public void chartCategoriesShow(LegendType legendType) - { - DateTime startDate = DateTime.parse(datePickerStart.getValue().toString()); - DateTime endDate = DateTime.parse(datePickerEnd.getValue().toString()); - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - ArrayList<CategoryInOutSum> sums = connection.getCategoryInOutSumForMonth(startDate, endDate); - - Platform.runLater(()->{; - vboxChartCategories.getChildren().clear(); - categoriesChart = new CategoriesChart(Localization.getString(Strings.CHART_CATEGORIES_TITLE_INCOMES), - Localization.getString(Strings.CHART_CATEGORIES_TITLE_PAYMENTS), - sums, - controller.getSettings().getCurrency(), - legendType); - vboxChartCategories.getChildren().add(categoriesChart); - VBox.setVgrow(categoriesChart, Priority.ALWAYS); - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(() -> { - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - }); - } - } - - public void chartCategoriesExport() - { - if(categoriesChart != null) - { - export(categoriesChart); - } - } - - public void chartMonthExport() - { - if(radioButtonLines.isSelected()) - { - if(monthLineChart != null) - { - export(monthLineChart); - } - } - else - { - if(monthBarChart != null) - { - export(monthBarChart); - } - } - } - - public void export(ChartExportable chart) - { - Worker.runLater(() -> { - Platform.runLater(() -> { - new ExportChartController(controller.getStage(), this, chart); - }); - }); - } - - public void chartMonthShow() - { - Platform.runLater(() -> { - vboxChartMonth.getChildren().clear(); - }); - - String startMonth = comboBoxStartMonth.getValue(); - String startYear = comboBoxStartYear.getValue(); - String endMonth = comboBoxEndMonth.getValue(); - String endYear = comboBoxEndYear.getValue(); - - String startDateString = "01-" + startMonth + "-" + startYear; - DateTime startDate = DateTime.parse(startDateString, DateTimeFormat.forPattern("dd-MMMM-YYYY").withLocale(controller.getSettings().getLanguage().getLocale())); - - String endDateString = "01-" + endMonth + "-" + endYear; - DateTime endDate = DateTime.parse(endDateString, DateTimeFormat.forPattern("dd-MMMM-YYYY").withLocale(controller.getSettings().getLanguage().getLocale())); - - if(endDate.isBefore(startDate)) - { - Platform.runLater(() -> { - AlertGenerator.showAlert(AlertType.WARNING, Localization.getString(Strings.TITLE_WARNING), "", Localization.getString(Strings.WARNING_ENDDATE_BEFORE_STARTDATE), controller.getIcon(), controller.getStage(), null, false); - }); - return; - } - - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - ArrayList<MonthInOutSum> sums = connection.getMonthInOutSum(startDate, endDate); - - Platform.runLater(() -> { - vboxChartMonth.getChildren().clear(); - - if(radioButtonBars.isSelected()) - { - monthBarChart = new MonthBarChart(sums, controller.getSettings().getCurrency()); - vboxChartMonth.getChildren().add(monthBarChart); - VBox.setVgrow(monthBarChart, Priority.ALWAYS); - } - else - { - monthLineChart = new MonthLineChart(sums, controller.getSettings().getCurrency()); - vboxChartMonth.getChildren().add(monthLineChart); - VBox.setVgrow(monthLineChart, Priority.ALWAYS); - } - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(() -> { - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - }); - } - } - - public Controller getController() - { - return controller; - } - - public void setLastExportPath(File lastExportPath) - { - this.lastExportPath = lastExportPath; - } - - public File getLastExportPath() - { - return lastExportPath; - } - - @Override - public void refresh() - { - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_CHARTS), controller.getStage(), controller.getIcon()); - - // prepare chart categories - LocalDate startDate = LocalDate.parse(controller.getCurrentDate().withDayOfMonth(1).toString("yyyy-MM-dd")); - LocalDate endDate = LocalDate.parse(controller.getCurrentDate().dayOfMonth().withMaximumValue().toString("yyyy-MM-dd")); - - datePickerStart.setValue(startDate); - datePickerEnd.setValue(endDate); - - // chart month - comboBoxStartMonth.setValue(controller.getCurrentDate().minusMonths(5).monthOfYear().getAsText(controller.getSettings().getLanguage().getLocale())); - comboBoxStartYear.setValue(String.valueOf(controller.getCurrentDate().minusMonths(5).getYear())); - - comboBoxEndMonth.setValue(controller.getCurrentDate().plusMonths(6).monthOfYear().getAsText(controller.getSettings().getLanguage().getLocale())); - comboBoxEndYear.setValue(String.valueOf(controller.getCurrentDate().plusMonths(6).getYear())); - - Worker.runLater(() -> { - chartCategoriesShow(LegendType.NORMAL); - chartMonthShow(); - - Platform.runLater(() -> { - LoadingModal.closeModal(); - }); - }); - } - - @Override - public void applyStyle() - { - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - vboxChartCategories.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - vboxChartCategories.setSpacing(20); - vboxChartMonth.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - - buttonChartCategoriesShow.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE)); - buttonChartCategoriesShow.setGraphic(new FontIcon(FontIconType.CHECK, 16, Color.WHITE)); - - buttonChartCategoriesExport.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE)); - buttonChartCategoriesExport.setGraphic(new FontIcon(FontIconType.SAVE, 16, Color.WHITE)); - - buttonChartMonthShow.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE)); - buttonChartMonthShow.setGraphic(new FontIcon(FontIconType.CHECK, 16, Color.WHITE)); - - buttonChartMonthExport.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE)); - buttonChartMonthExport.setGraphic(new FontIcon(FontIconType.SAVE, 16, Color.WHITE)); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/Controller.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/Controller.java deleted file mode 100644 index 068b72c5f..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/Controller.java +++ /dev/null @@ -1,914 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.awt.Desktop; -import java.io.IOException; -import java.net.URI; -import java.net.URISyntaxException; -import java.util.ArrayList; -import java.util.Locale; -import java.util.Optional; -import java.util.ResourceBundle; - -import org.joda.time.DateTime; -import org.joda.time.format.DateTimeFormat; -import org.joda.time.format.DateTimeFormatter; - -import de.deadlocker8.budgetmaster.logic.FilterSettings; -import de.deadlocker8.budgetmaster.logic.ServerType; -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.category.CategoryBudget; -import de.deadlocker8.budgetmaster.logic.category.CategoryHandler; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.PaymentHandler; -import de.deadlocker8.budgetmaster.logic.search.SearchPreferences; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.tag.TagHandler; -import de.deadlocker8.budgetmaster.logic.updater.Updater; -import de.deadlocker8.budgetmaster.logic.updater.VersionInformation; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.ShutdownHandler; -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandBundle; -import de.deadlocker8.budgetmasterclient.ui.commandLine.CommandLine; -import de.deadlocker8.budgetmasterclient.ui.controller.settings.LocalServerSettingsController; -import de.deadlocker8.budgetmasterclient.ui.controller.settings.SettingsController; -import de.deadlocker8.budgetmasterclient.utils.LoadingModal; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.animation.FadeTransition; -import javafx.animation.SequentialTransition; -import javafx.application.Platform; -import javafx.fxml.FXML; -import javafx.fxml.FXMLLoader; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.Parent; -import javafx.scene.control.Alert; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.ButtonType; -import javafx.scene.control.DialogPane; -import javafx.scene.control.Hyperlink; -import javafx.scene.control.Label; -import javafx.scene.control.Tab; -import javafx.scene.control.TabPane; -import javafx.scene.image.Image; -import javafx.scene.image.ImageView; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyCodeCombination; -import javafx.scene.input.KeyCombination; -import javafx.scene.input.KeyEvent; -import javafx.scene.layout.AnchorPane; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.VBox; -import javafx.scene.text.Font; -import javafx.scene.text.Text; -import javafx.scene.text.TextFlow; -import javafx.stage.Stage; -import javafx.util.Duration; -import logger.Logger; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.Localization; -import tools.Worker; - -public class Controller extends BaseController -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private Button buttonDate; - @FXML private Button buttonLeft; - @FXML private Button buttonRight; - @FXML private Button buttonToday; - @FXML private Button buttonAbout; - @FXML private TabPane tabPane; - @FXML private Tab tabHome; - @FXML private Tab tabPayments; - @FXML private Tab tabCategories; - @FXML private Tab tabCharts; - @FXML private Tab tabReports; - @FXML private Tab tabSettings; - @FXML private Label labelNotification; - - private HomeController homeController; - private PaymentController paymentController; - private CategoryController categoryController; - private ChartController chartController; - private ReportController reportController; - private SettingsController settingsController; - - private Image icon = new Image("de/deadlocker8/budgetmaster/icon.png"); - private Settings settings; - private ShutdownHandler shutdownHandler; - private DateTime currentDate; - private ArrayList<CategoryBudget> categoryBudgets; - private PaymentHandler paymentHandler; - private CategoryHandler categoryHandler; - private FilterSettings filterSettings; - private Updater updater; - private Payment selectedPayment; - private SearchPreferences searchPreferences; - private CommandLine cmd; - - private boolean alertIsShowing = false; - private static DateTimeFormatter DATE_FORMAT; - - public Controller(Settings settings, ShutdownHandler shutdownHandler) - { - this.settings = settings; - this.shutdownHandler = shutdownHandler; - DATE_FORMAT = DateTimeFormat.forPattern("MMMM yyyy").withLocale(this.settings.getLanguage().getLocale()); - load("/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml", Localization.getBundle()); - getStage().show(); - } - - @Override - public void initStage(Stage stage) - { - stage.setTitle(Localization.getString(Strings.APP_NAME)); - stage.getIcons().add(icon); - stage.setResizable(true); - stage.setWidth(660); - stage.setHeight(725); - stage.setMinWidth(660); - stage.setMinHeight(650); - stage.getScene().getStylesheets().add("/de/deadlocker8/budgetmaster/ui/style.css"); - } - - @Override - public void init() - { - this.shutdownHandler.setController(this); - - getStage().setOnCloseRequest((event)->{ - Runtime.getRuntime().removeShutdownHook(shutdownHandler.getShutdownThread()); - shutdownHandler.shutdown(); - }); - - try - { - Runtime.getRuntime().addShutdownHook(shutdownHandler.getShutdownThread()); - } - catch(IllegalArgumentException e) - { - } - - if(settings.getServerType() == null) - { - settings.setServerType(ServerType.ONLINE); - } - Logger.info("Running with ServerType: " + settings.getServerType()); - - currentDate = DateTime.now(); - buttonDate.setText(currentDate.toString(DATE_FORMAT)); - - filterSettings = new FilterSettings(); - paymentHandler = new PaymentHandler(); - updater = new Updater(); - - CommandBundle commandBundle = new CommandBundle(this); - cmd = new CommandLine(getStage(), icon, ResourceBundle.getBundle("de/deadlocker8/budgetmaster/ui/commandLine/", Locale.ENGLISH), commandBundle); - - if(settings.isAutoUpdateCheckEnabled()) - { - checkForUpdates(false); - } - - final KeyCombination keyCombinationSearch = new KeyCodeCombination(KeyCode.F, KeyCombination.CONTROL_DOWN); - - getStage().getScene().setOnKeyReleased((event)->{ - if(event.getCode().toString().equals(Localization.getString(Strings.SHORTCUT_DEV_CONSOLE))) - { - try - { - cmd.showCommandLine("Dev Console", 400, 250, 400, 200, -1, -1, true); - } - catch(IOException e) - { - Logger.error("Error opening dev console"); - Logger.error(e); - } - } - else if(keyCombinationSearch.match(event)) - { - if(!tabPayments.isDisabled()) - { - tabPane.getSelectionModel().select(tabPayments); - paymentController.search(); - } - } - }); - - initUI(); - } - - private <T> T loadTab(String fileName, Tab tab) throws IOException - { - FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource(fileName)); - fxmlLoader.setResources(Localization.getBundle()); - Parent nodeTab = (Parent)fxmlLoader.load(); - tab.setContent(nodeTab); - return fxmlLoader.getController(); - } - - private void initUI() - { - try - { - homeController = loadTab("/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml", tabHome); - homeController.init(this); - - paymentController = loadTab("/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml", tabPayments); - paymentController.init(this); - - categoryController = loadTab("/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml", tabCategories); - categoryController.init(this); - - chartController = loadTab("/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml", tabCharts); - chartController.init(this); - tabCharts.selectedProperty().addListener((a,b,c)->{ - if(c) - { - chartController.refresh(); - } - }); - - reportController = loadTab("/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml", tabReports); - reportController.init(this); - tabReports.selectedProperty().addListener((a,b,c)->{ - if(c) - { - reportController.refresh(); - } - }); - - loadSettingsTab(); - } - catch(IOException e) - { - Logger.error(e); - Platform.runLater(() -> { - AlertGenerator.showAlert(AlertType.ERROR, Localization.getString(Strings.TITLE_ERROR), "", Localization.getString(Strings.ERROR_CREATE_UI), icon, getStage(), null, false); - }); - } - - buttonLeft.setGraphic(new FontIcon(FontIconType.CHEVRON_LEFT, 20, Colors.TEXT)); - buttonRight.setGraphic(new FontIcon(FontIconType.CHEVRON_RIGHT, 20, Colors.TEXT)); - buttonToday.setGraphic(new FontIcon(FontIconType.CALENDAR_ALT, 20, Colors.TEXT)); - buttonAbout.setGraphic(new FontIcon(FontIconType.INFO, 20, Colors.TEXT)); - - // apply theme - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_MAIN)); - labelNotification.setStyle("-fx-text-fill: #FFFFFF; -fx-font-size: 16; -fx-font-weight: bold; -fx-background-color: transparent;"); - - buttonDate.setStyle("-fx-padding: 0; -fx-background-color: transparent; -fx-font-weight: bold; -fx-font-size: 24; -fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - buttonDate.getStyleClass().add("button-hoverable"); - - buttonLeft.setStyle("-fx-background-color: transparent;"); - buttonLeft.getStyleClass().add("button-hoverable"); - - buttonRight.setStyle("-fx-background-color: transparent;"); - buttonRight.getStyleClass().add("button-hoverable"); - - buttonToday.setStyle("-fx-background-color: transparent;"); - buttonToday.getStyleClass().add("button-hoverable"); - - buttonAbout.setStyle("-fx-background-color: transparent;"); - buttonAbout.getStyleClass().add("button-hoverable"); - } - - public void loadSettingsTab() - { - try - { - if(settings.getServerType().equals(ServerType.ONLINE)) - { - settingsController = loadTab("/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml", tabSettings); - settingsController.init(this); - } - else - { - settingsController = loadTab("/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml", tabSettings); - settingsController.init(this); - } - - } - catch(IOException e) - { - Logger.error(e); - Platform.runLater(() -> { - AlertGenerator.showAlert(AlertType.ERROR, Localization.getString(Strings.TITLE_ERROR), "", Localization.getString(Strings.ERROR_CREATE_UI), icon, getStage(), null, false); - }); - } - } - - public boolean checkSettings() - { - if(!settings.isComplete()) - { - Platform.runLater(() -> { - toggleAllTabsExceptSettings(true); - tabPane.getSelectionModel().select(tabSettings); - AlertGenerator.showAlert(AlertType.INFORMATION, Localization.getString(Strings.TITLE_INFO), "", Localization.getString(Strings.INFO_FIRST_START), icon, getStage(), null, false); - }); - return false; - } - return true; - } - - public Image getIcon() - { - return icon; - } - - public Settings getSettings() - { - return settings; - } - - public void setSettings(Settings settings) - { - this.settings = settings; - } - - public ShutdownHandler getShutdownHandler() - { - return shutdownHandler; - } - - public void showNotification(String text) - { - labelNotification.setText(text); - labelNotification.setStyle("-fx-text-fill: #FFFFFF; -fx-font-size: 16; -fx-font-weight: bold; -fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_NOTIFICATION)); - FadeTransition fadeIn = new FadeTransition(Duration.millis(200), labelNotification); - fadeIn.setFromValue(0.0); - fadeIn.setToValue(1.0); - - FadeTransition fadeOut = new FadeTransition(Duration.millis(400), labelNotification); - fadeOut.setFromValue(1.0); - fadeOut.setToValue(0.0); - fadeOut.setDelay(Duration.millis(3000)); - fadeOut.play(); - - SequentialTransition seqT = new SequentialTransition(fadeIn, fadeOut); - seqT.play(); - seqT.setOnFinished((a) -> { - labelNotification.setStyle("-fx-text-fill: #FFFFFF; -fx-font-size: 16; -fx-font-weight: bold; -fx-background-color: transparent;"); - }); - } - - public void previousMonth() - { - currentDate = currentDate.minusMonths(1); - buttonDate.setText(currentDate.toString(DATE_FORMAT)); - - refresh(filterSettings); - } - - public void nextMonth() - { - currentDate = currentDate.plusMonths(1); - buttonDate.setText(currentDate.toString(DATE_FORMAT)); - - refresh(filterSettings); - } - - public void today() - { - currentDate = DateTime.now(); - buttonDate.setText(currentDate.toString(DATE_FORMAT)); - - refresh(filterSettings); - } - - public void setDate(DateTime newDate) - { - currentDate = newDate; - buttonDate.setText(currentDate.toString(DATE_FORMAT)); - - refresh(filterSettings); - } - - public DateTime getCurrentDate() - { - return currentDate; - } - - public void openDatePicker() - { - new DatePickerController(getStage(), this, currentDate); - } - - public void forceSettingsTab() - { - toggleAllTabsExceptSettings(true); - tabPane.getSelectionModel().select(tabSettings); - } - - public void showConnectionErrorAlert(String errorMessage) - { - if(!alertIsShowing) - { - alertIsShowing = true; - Platform.runLater(() -> { - toggleAllTabsExceptSettings(true); - tabPane.getSelectionModel().select(tabSettings); - - alertIsShowing = true; - Alert alert = new Alert(AlertType.ERROR); - alert.setTitle(Localization.getString(Strings.TITLE_ERROR)); - alert.setHeaderText(""); - if(errorMessage == null) - { - alert.setContentText(Localization.getString(Strings.ERROR_SERVER_CONNECTION)); - } - else - { - alert.setContentText(Localization.getString(Strings.ERROR_SERVER_CONNECTION_WITH_DETAILS, errorMessage)); - } - - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(icon); - dialogStage.initOwner(getStage()); - alert.showAndWait(); - alertIsShowing = false; - }); - } - } - - public void refreshAllTabs() - { - homeController.refresh(); - paymentController.refresh(); - categoryController.refresh(); - if(tabCharts.isSelected()) - { - chartController.refresh(); - } - if(tabReports.isSelected()) - { - reportController.refresh(); - } - } - - public ArrayList<CategoryBudget> getCategoryBudgets() - { - return categoryBudgets; - } - - public PaymentHandler getPaymentHandler() - { - return paymentHandler; - } - - public CategoryHandler getCategoryHandler() - { - return categoryHandler; - } - - public FilterSettings getFilterSettings() - { - return filterSettings; - } - - public Updater getUpdater() - { - return updater; - } - - public SettingsController getSettingsController() - { - return settingsController; - } - - public void setFilterSettings(FilterSettings filterSettings) - { - this.filterSettings = filterSettings; - } - - public void toggleAllTabsExceptSettings(boolean disable) - { - tabHome.setDisable(disable); - tabPayments.setDisable(disable); - tabCategories.setDisable(disable); - tabCharts.setDisable(disable); - tabReports.setDisable(disable); - buttonLeft.setDisable(disable); - buttonRight.setDisable(disable); - buttonToday.setDisable(disable); - buttonDate.setDisable(disable); - } - - public void setSelectedPayment(Payment payment) - { - selectedPayment = payment; - } - - public Payment getSelectedPayment() - { - return selectedPayment; - } - - public SearchPreferences getSearchPreferences() - { - return searchPreferences; - } - - public void setSearchPreferences(SearchPreferences searchPreferences) - { - this.searchPreferences = searchPreferences; - } - - public PaymentController getPaymentController() - { - return paymentController; - } - - public void checkForUpdates(boolean showNotification) - { - try - { - boolean updateAvailable = updater.isUpdateAvailable(Integer.parseInt(Localization.getString(Strings.VERSION_CODE))); - - if(!updateAvailable) - { - if(showNotification) - { - showNotification(Localization.getString(Strings.NOTIFICATION_NO_UPDATE_AVAILABLE)); - } - return; - } - - Platform.runLater(()->{ - showUpdateAlert(); - }); - } - catch(Exception e) - { - Logger.error(e); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_UPDATER_GET_LATEST_VERSION), - icon, null, null, true); - } - } - - private void showUpdateAlert() - { - Alert alert = new Alert(AlertType.INFORMATION); - alert.setTitle(Localization.getString(Strings.INFO_TITLE_UPDATE_AVAILABLE)); - alert.setHeaderText(""); - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(icon); - - Hyperlink linkText = new Hyperlink(Localization.getString(Strings.INFO_TEXT_UPDATE_AVAILABLE_SHOW_CHANGES)); - linkText.setOnAction((event)->{ - if(Desktop.isDesktopSupported()) - { - try - { - Desktop.getDesktop().browse(new URI(Localization.getString(Strings.ROADMAP_URL))); - } - catch(IOException | URISyntaxException e) - { - Logger.error(e); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_OPEN_BROWSER), - icon, getStage(), null, false); - } - } - }); - - Hyperlink detailedMilestones = new Hyperlink(Localization.getString(Strings.INFO_TEXT_UPDATE_AVAILABLE_SHOW_CHANGES_DETAILED)); - detailedMilestones.setOnAction((event)->{ - if(Desktop.isDesktopSupported()) - { - try - { - Desktop.getDesktop().browse(new URI(Localization.getString(Strings.GITHUB_URL))); - } - catch(IOException | URISyntaxException e) - { - Logger.error(e); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_OPEN_BROWSER), - icon, getStage(), null, false); - } - } - }); - - TextFlow textFlow = new TextFlow( - new Text(Localization.getString(Strings.INFO_TEXT_UPDATE_AVAILABLE, - updater.getLatestVersion().getVersionName())), - linkText, - new Text("\n\n"), - detailedMilestones - ); - - alert.getDialogPane().setContent(textFlow); - - ButtonType buttonTypeOne = new ButtonType(Localization.getString(Strings.INFO_TEXT_UPDATE_AVAILABLE_NOW)); - ButtonType buttonTypeTwo = new ButtonType(Localization.getString(Strings.CANCEL)); - alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeTwo); - - DialogPane dialogPane = alert.getDialogPane(); - dialogPane.getButtonTypes().stream().map(dialogPane::lookupButton).forEach(button -> button.addEventHandler(KeyEvent.KEY_PRESSED, (event) -> { - if(KeyCode.ENTER.equals(event.getCode()) && event.getTarget() instanceof Button) - { - ((Button)event.getTarget()).fire(); - } - })); - - Optional<ButtonType> result = alert.showAndWait(); - if (result.get() == buttonTypeOne) - { - LoadingModal.showModal(this, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_UPDATE), getStage(), icon); - - Worker.runLater(() -> { - try - { - updater.downloadLatestVersion(); - Platform.runLater(() -> { - LoadingModal.closeModal(); - }); - } - catch(Exception ex) - { - Logger.error(ex); - Platform.runLater(() -> { - LoadingModal.closeModal(); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_UPDATER_DOWNLOAD_LATEST_VERSION, ex.getMessage()), - icon, getStage(), null, true); - }); - } - }); - } - else - { - alert.close(); - } - } - - private Label getLabelForAboutColumns(String text, boolean bold) - { - Label label = new Label(text); - if(bold) - { - label.setStyle("-fx-font-size: 14; -fx-font-weight: bold;"); - } - else - { - label.setStyle("-fx-font-size: 14;"); - } - return label; - } - - public void about() - { - Alert alert = new Alert(AlertType.NONE); - alert.setTitle(Localization.getString(Strings.ABOUT, Localization.getString(Strings.APP_NAME))); - alert.setHeaderText(""); - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(icon); - - Hyperlink roadmapLink = new Hyperlink(Localization.getString(Strings.ABOUT_ROADMAP_LINK)); - roadmapLink.setFont(new Font(14)); - roadmapLink.setPadding(new Insets(0)); - roadmapLink.setOnAction((event)->{ - if(Desktop.isDesktopSupported()) - { - try - { - Desktop.getDesktop().browse(new URI(Localization.getString(Strings.ROADMAP_URL))); - } - catch(IOException | URISyntaxException e) - { - Logger.error(e); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_OPEN_BROWSER), - icon, getStage(), null, false); - } - } - }); - - Hyperlink githubLink = new Hyperlink(Localization.getString(Strings.GITHUB_URL)); - githubLink.setFont(new Font(14)); - githubLink.setPadding(new Insets(0)); - githubLink.setOnAction((event)->{ - if(Desktop.isDesktopSupported()) - { - try - { - Desktop.getDesktop().browse(new URI(Localization.getString(Strings.GITHUB_URL))); - } - catch(IOException | URISyntaxException e) - { - Logger.error(e); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_OPEN_BROWSER), - icon, getStage(), null, false); - } - } - }); - - VBox vbox = new VBox(); - vbox.setSpacing(10); - HBox hboxLogo = new HBox(); - hboxLogo.setSpacing(25); - ImageView imageViewLogo = new ImageView(icon); - imageViewLogo.setFitHeight(75); - imageViewLogo.setFitWidth(75); - hboxLogo.getChildren().add(imageViewLogo); - - Label labelName = new Label(Localization.getString(Strings.ABOUT, Localization.getString(Strings.APP_NAME))); - labelName.setStyle("-fx-font-weight: bold; -fx-font-size: 22;"); - labelName.setMaxWidth(Double.MAX_VALUE); - hboxLogo.getChildren().add(labelName); - HBox.setHgrow(labelName, Priority.ALWAYS); - hboxLogo.setAlignment(Pos.CENTER); - vbox.getChildren().add(hboxLogo); - - HBox hboxColumns = new HBox(); - VBox vboxLeft = new VBox(); - vboxLeft.setSpacing(7); - VBox vboxRight = new VBox(); - vboxRight.setSpacing(7); - - vboxLeft.getChildren().add(getLabelForAboutColumns(Localization.getString(Strings.ABOUT_VERSION), true)); - vboxLeft.getChildren().add(getLabelForAboutColumns(Localization.getString(Strings.ABOUT_DATE), true)); - vboxLeft.getChildren().add(getLabelForAboutColumns(Localization.getString(Strings.ABOUT_AUTHOR), true)); - vboxLeft.getChildren().add(getLabelForAboutColumns(Localization.getString(Strings.ABOUT_ROADMAP), true)); - Label labelSourceCode = getLabelForAboutColumns(Localization.getString(Strings.ABOUT_SOURCECODE), true); - vboxLeft.getChildren().add(labelSourceCode); - VBox.setMargin(labelSourceCode, new Insets(2, 0, 0, 0)); - vboxLeft.getChildren().add(getLabelForAboutColumns(Localization.getString(Strings.ABOUT_CREDITS), true)); - - vboxRight.getChildren().add(getLabelForAboutColumns(Localization.getString(Strings.VERSION_NAME) + " (" + Localization.getString(Strings.VERSION_CODE) + ")", false)); - vboxRight.getChildren().add(getLabelForAboutColumns(Localization.getString(Strings.VERSION_DATE), false)); - vboxRight.getChildren().add(getLabelForAboutColumns(Localization.getString(Strings.AUTHOR), false)); - vboxRight.getChildren().add(roadmapLink); - vboxRight.getChildren().add(githubLink); - - VBox vboxCredits = new VBox(); - for(String line : Localization.getString(Strings.CREDITS).split("\n")) - { - vboxCredits.getChildren().add(getLabelForAboutColumns(line, false)); - } - vboxRight.getChildren().add(vboxCredits); - - vboxLeft.setMinWidth(100); - hboxColumns.getChildren().addAll(vboxLeft, vboxRight); - HBox.setHgrow(vboxLeft, Priority.ALWAYS); - HBox.setHgrow(vboxRight, Priority.ALWAYS); - - vbox.getChildren().add(hboxColumns); - alert.getDialogPane().setContent(vbox); - - alert.getButtonTypes().setAll(new ButtonType(Localization.getString(Strings.OK))); - - DialogPane dialogPane = alert.getDialogPane(); - dialogPane.getButtonTypes().stream().map(dialogPane::lookupButton).forEach(button -> button.addEventHandler(KeyEvent.KEY_PRESSED, (event) -> { - if(KeyCode.ENTER.equals(event.getCode()) && event.getTarget() instanceof Button) - { - ((Button)event.getTarget()).fire(); - } - })); - - alert.showAndWait(); - } - - public void refresh(FilterSettings newFilterSettings) - { - Logger.debug("Starting main refresh..."); - Platform.runLater(()->{ - LoadingModal.showModal(this, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_DATA), getStage(), icon); - }); - - Worker.runLater(() -> { - try - { - ServerConnection connection = new ServerConnection(settings); - - //check if server is compatible with client - try - { - Logger.debug("Checking server compatibility..."); - VersionInformation serverVersion = connection.getServerVersion(); - if(serverVersion.getVersionCode() < Integer.parseInt(Localization.getString(Strings.VERSION_CODE))) - { - Logger.debug("Server (versionCode: " + serverVersion.getVersionCode() + ") is incompatible with client (versionCode: " + Localization.getString(Strings.VERSION_CODE) + ")"); - if(settings.getServerType().equals(ServerType.ONLINE)) - { - Platform.runLater(()->{ - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_SERVER_VERSION, serverVersion.getVersionName(), Localization.getString(Strings.VERSION_NAME)), - icon, getStage(), null, false); - - LoadingModal.closeModal(); - categoryHandler = new CategoryHandler(null); - toggleAllTabsExceptSettings(true); - tabPane.getSelectionModel().select(tabSettings); - }); - } - else - { - Platform.runLater(()->{ - LoadingModal.closeModal(); - categoryHandler = new CategoryHandler(null); - toggleAllTabsExceptSettings(true); - tabPane.getSelectionModel().select(tabSettings); - ((LocalServerSettingsController)settingsController).handleIncompatibleServer(); - }); - } - return; - } - else - { - Logger.debug("Found compatible server (versionCode: " + serverVersion.getVersionCode() + ")"); - } - } - catch(Exception e1) - { - Logger.error(e1); - Platform.runLater(()->{ - LoadingModal.closeModal(); - }); - - if(e1.getMessage().contains("404")) - { - Logger.debug("Server version is incompatible with current client version (" + Localization.getString(Strings.VERSION_CODE) + ")"); - //old server - Platform.runLater(()->{ - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_SERVER_VERSION, Localization.getString(Strings.UNDEFINED), Localization.getString(Strings.VERSION_NAME)), - icon, getStage(), null, false); - - categoryHandler = new CategoryHandler(null); - toggleAllTabsExceptSettings(true); - tabPane.getSelectionModel().select(tabSettings); - }); - } - else - { - //normal connection error (e.g. server not running) - showConnectionErrorAlert(ExceptionHandler.getMessageForException(e1)); - } - return; - } - - Logger.debug("Connected"); - - paymentHandler = new PaymentHandler(); - paymentHandler.getPayments().addAll(connection.getPayments(currentDate.getYear(), currentDate.getMonthOfYear())); - paymentHandler.getPayments().addAll(connection.getRepeatingPayments(currentDate.getYear(), currentDate.getMonthOfYear())); - paymentHandler.sort(); - if(settings.isRestActivated()) - { - int rest = connection.getRestForAllPreviousMonths(currentDate.getYear(), currentDate.getMonthOfYear()); - //categoryID 2 = Rest - paymentHandler.getPayments().add(new NormalPayment(-1, rest, currentDate.withDayOfMonth(1).toString("yyyy-MM-dd"), 2, Localization.getString(Strings.CATEGORY_REST), "")); - } - - categoryHandler = new CategoryHandler(connection.getCategories()); - - categoryBudgets = connection.getCategoryBudgets(currentDate.getYear(), currentDate.getMonthOfYear()); - paymentHandler.filter(newFilterSettings, new TagHandler(settings)); - Logger.debug("Main refresh done"); - - Platform.runLater(() -> { - LoadingModal.closeModal(); - toggleAllTabsExceptSettings(false); - refreshAllTabs(); - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(() -> { - LoadingModal.closeModal(); - categoryHandler = new CategoryHandler(null); - showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - refreshAllTabs(); - }); - } - }); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/DatePickerController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/DatePickerController.java deleted file mode 100644 index 8420aba70..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/DatePickerController.java +++ /dev/null @@ -1,124 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import org.joda.time.DateTime; -import org.joda.time.format.DateTimeFormat; - -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.fxml.FXML; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.ComboBox; -import javafx.scene.control.Spinner; -import javafx.scene.control.SpinnerValueFactory; -import javafx.scene.paint.Color; -import javafx.stage.Modality; -import javafx.stage.Stage; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.Localization; - -public class DatePickerController extends BaseController implements Styleable -{ - @FXML private ComboBox<String> comboBoxMonth; - @FXML private Spinner<Integer> spinnerYear; - @FXML private Button buttonCancel; - @FXML private Button buttonConfirm; - - private Stage parentStage; - private Controller controller; - private DateTime currentDate; - - public DatePickerController(Stage parentStage, Controller controller, DateTime currentDate) - { - this.parentStage = parentStage; - this.controller = controller; - this.currentDate = currentDate; - load("/de/deadlocker8/budgetmaster/ui/fxml/DatePickerGUI.fxml", Localization.getBundle()); - getStage().showAndWait(); - } - - @Override - public void initStage(Stage stage) - { - stage.initOwner(parentStage); - stage.initModality(Modality.APPLICATION_MODAL); - stage.setTitle(Localization.getString(Strings.TITLE_DATEPICKER)); - stage.getIcons().add(controller.getIcon()); - stage.setResizable(false); - } - - @Override - public void init() - { - SpinnerValueFactory<Integer> spinnerYearValueFactory = new SpinnerValueFactory.IntegerSpinnerValueFactory(1, 3000, currentDate.getYear()); - spinnerYear.setValueFactory(spinnerYearValueFactory); - spinnerYear.setEditable(false); - spinnerYear.focusedProperty().addListener((observable, oldValue, newValue) -> { - if(!newValue) - { - spinnerYear.increment(0); // won't change value, but will commit editor - } - }); - - comboBoxMonth.getItems().addAll(Helpers.getMonthList()); - comboBoxMonth.setValue(Helpers.getMonthList().get(currentDate.getMonthOfYear()-1)); - - applyStyle(); - } - - public void confirm() - { - String year = String.valueOf(spinnerYear.getValue()); - if(year == null || year.equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_YEAR), - controller.getIcon(), - getStage(), - null, - false); - return; - } - - if(year.length() > 4) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_WRONG_YEAR), - controller.getIcon(), - getStage(), - null, - false); - return; - } - - String dateString = year + "-" + (Helpers.getMonthList().indexOf(comboBoxMonth.getValue()) + 1); - DateTime newDate = DateTime.parse(dateString, DateTimeFormat.forPattern("YYYY-MM")); - - getStage().close(); - controller.setDate(newDate); - } - - public void cancel() - { - getStage().close(); - } - - @Override - public void applyStyle() - { - buttonCancel.setGraphic(new FontIcon(FontIconType.TIMES, 17, Color.WHITE)); - buttonConfirm.setGraphic(new FontIcon(FontIconType.SAVE, 17, Color.WHITE)); - - buttonCancel.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - buttonConfirm.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ExportChartController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ExportChartController.java deleted file mode 100644 index 8ef7e2be2..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ExportChartController.java +++ /dev/null @@ -1,326 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.awt.Desktop; -import java.io.File; -import java.io.IOException; -import java.util.Optional; - -import javax.imageio.ImageIO; - -import de.deadlocker8.budgetmaster.logic.charts.ChartExportable; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.embed.swing.SwingFXUtils; -import javafx.fxml.FXML; -import javafx.scene.control.Alert; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.ButtonType; -import javafx.scene.control.DialogPane; -import javafx.scene.control.Label; -import javafx.scene.control.TextField; -import javafx.scene.control.TextFormatter; -import javafx.scene.image.WritableImage; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyEvent; -import javafx.scene.layout.AnchorPane; -import javafx.scene.paint.Color; -import javafx.stage.FileChooser; -import javafx.stage.Modality; -import javafx.stage.Stage; -import logger.Logger; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.Localization; - -public class ExportChartController extends BaseController implements Styleable -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private TextField textFieldWidth; - @FXML private TextField textFieldHeight; - @FXML private Label labelSavePath; - @FXML private Button buttonChooseFile; - @FXML private Button buttonExport; - @FXML private Button buttonCancel; - - private ChartController controller; - private Stage parentStage; - private ChartExportable chart; - private File savePath; - - public ExportChartController(Stage parentStage, ChartController controller, ChartExportable chart) - { - this.parentStage = parentStage; - this.controller = controller; - this.chart = chart; - load("/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml", Localization.getBundle()); - getStage().showAndWait(); - } - - @Override - public void initStage(Stage stage) - { - stage.initOwner(parentStage); - stage.initModality(Modality.APPLICATION_MODAL); - stage.setTitle(Localization.getString(Strings.TITLE_CHART_EXPORT)); - stage.getIcons().add(controller.getController().getIcon()); - stage.setResizable(false); - } - - @Override - public void init() - { - applyStyle(); - - this.savePath = controller.getLastExportPath(); - if(savePath != null) - { - labelSavePath.setText(savePath.getAbsolutePath()); - } - - textFieldWidth.setText(String.valueOf((int)chart.getSuggestedWidth())); - textFieldHeight.setText(String.valueOf((int)chart.getSuggestedHeight())); - - textFieldWidth.setTextFormatter(new TextFormatter<>(c -> { - if(c.getControlNewText().isEmpty()) - { - return c; - } - - if(c.getControlNewText().matches("[0-9]*")) - { - return c; - } - else - { - return null; - } - })); - - textFieldHeight.setTextFormatter(new TextFormatter<>(c -> { - if(c.getControlNewText().isEmpty()) - { - return c; - } - - if(c.getControlNewText().matches("[0-9]*")) - { - return c; - } - else - { - return null; - } - })); - } - - public void chooseFile() - { - FileChooser fileChooser = new FileChooser(); - fileChooser.setTitle(Localization.getString(Strings.TITLE_CHART_EXPORT)); - FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("PNG (*.png)", "*.png"); - if(savePath != null) - { - fileChooser.setInitialDirectory(savePath.getParentFile()); - fileChooser.setInitialFileName(savePath.getName()); - } - fileChooser.getExtensionFilters().add(extFilter); - File file = fileChooser.showSaveDialog(getStage()); - if(file != null) - { - savePath = file; - labelSavePath.setText(file.getAbsolutePath()); - } - } - - public void export() - { - String widthText = textFieldWidth.getText(); - if(widthText == null || widthText.equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_WIDTH_IN_PIXELS), - controller.getController().getIcon(), - getStage(), - null, - false); - return; - } - - int width = 0; - try - { - width = Integer.parseInt(widthText); - } - catch(Exception e) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_INTEGER_WIDTH_IN_PIXELS), - controller.getController().getIcon(), - getStage(), - null, - false); - return; - } - - String heightText = textFieldHeight.getText(); - if(heightText == null || heightText.equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_HEIGHT_IN_PIXELS), - controller.getController().getIcon(), - getStage(), - null, - false); - return; - } - - int height = 0; - try - { - height = Integer.parseInt(heightText); - } - catch(Exception e) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_INTEGER_HEIGHT_IN_PIXELS), - controller.getController().getIcon(), - getStage(), - null, - false); - return; - } - - if(savePath == null) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_SAVEPATH_CHART), - controller.getController().getIcon(), - getStage(), - null, - false); - return; - } - - WritableImage image = chart.export(width, height); - - try - { - ImageIO.write(SwingFXUtils.fromFXImage(image, null), "png", savePath); - - Alert alert = new Alert(AlertType.INFORMATION); - alert.setTitle(Localization.getString(Strings.INFO_TITLE_CHART_EXPORT)); - alert.initOwner(controller.getController().getStage()); - alert.setHeaderText(""); - alert.setContentText(Localization.getString(Strings.INFO_TEXT_CHART_EXPORT)); - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(controller.getController().getIcon()); - - ButtonType buttonTypeOne = new ButtonType(Localization.getString(Strings.INFO_TEXT_CHART_EXPORT_OPEN_FOLDER)); - ButtonType buttonTypeTwo = new ButtonType(Localization.getString(Strings.INFO_TEXT_CHART_EXPORT_OPEN_CHART)); - ButtonType buttonTypeThree = new ButtonType(Localization.getString(Strings.OK)); - alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeTwo, buttonTypeThree); - - DialogPane dialogPane = alert.getDialogPane(); - dialogPane.getButtonTypes().stream().map(dialogPane::lookupButton).forEach(button -> button.addEventHandler(KeyEvent.KEY_PRESSED, (event) -> { - if(KeyCode.ENTER.equals(event.getCode()) && event.getTarget() instanceof Button) - { - ((Button)event.getTarget()).fire(); - } - })); - - Optional<ButtonType> result = alert.showAndWait(); - if (result.get() == buttonTypeOne) - { - try - { - Desktop.getDesktop().open(new File(savePath.getParent().replace("\\", "/"))); - } - catch(IOException e1) - { - Logger.error(e1); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_OPEN_FOLDER, e1.getMessage()), - controller.getController().getIcon(), - getStage(), - null, - false); - } - } - else if (result.get() == buttonTypeTwo) - { - try - { - Desktop.getDesktop().open(new File(savePath.getAbsolutePath().replace("\\", "/"))); - } - catch(IOException e1) - { - Logger.error(e1); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_OPEN_CHART, e1.getMessage()), - controller.getController().getIcon(), - getStage(), - null, - false); - } - } - else - { - alert.close(); - } - } - catch(IOException e) - { - Logger.error(e); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_CHART_EXPORT, e.getMessage()), - controller.getController().getIcon(), - getStage(), - null, - false); - } - - getStage().close(); - controller.getController().showNotification(Localization.getString(Strings.NOTIFICATION_CHART_EXPORT)); - controller.setLastExportPath(savePath); - } - - public void cancel() - { - getStage().close(); - } - - @Override - public void applyStyle() - { - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - - buttonChooseFile.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonChooseFile.setGraphic(new FontIcon(FontIconType.FOLDER_OPEN, 14, Color.WHITE)); - - buttonExport.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonExport.setGraphic(new FontIcon(FontIconType.SAVE, 14, Color.WHITE)); - - buttonCancel.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonCancel.setGraphic(new FontIcon(FontIconType.TIMES, 14, Color.WHITE)); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/FilterController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/FilterController.java deleted file mode 100644 index c092a851c..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/FilterController.java +++ /dev/null @@ -1,282 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.FilterSettings; -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerTagConnection; -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.fxml.FXML; -import javafx.scene.Node; -import javafx.scene.control.Button; -import javafx.scene.control.CheckBox; -import javafx.scene.control.Label; -import javafx.scene.control.ScrollPane; -import javafx.scene.control.TextField; -import javafx.scene.input.KeyCode; -import javafx.scene.layout.VBox; -import javafx.scene.paint.Color; -import javafx.stage.Modality; -import javafx.stage.Stage; -import logger.Logger; -import tools.ConvertTo; -import tools.Localization; - -public class FilterController extends BaseController implements Styleable -{ - @FXML private ScrollPane scrollPane; - @FXML private VBox vboxMain; - @FXML private CheckBox checkBoxIncome; - @FXML private CheckBox checkBoxPayment; - @FXML private CheckBox checkBoxNoRepeating; - @FXML private CheckBox checkBoxMonthlyRepeating; - @FXML private CheckBox checkBoxRepeatEveryXDays; - @FXML private VBox vboxCategories; - @FXML private TextField textFieldSearch; - @FXML private VBox vboxTags; - @FXML private Button buttonCancel; - @FXML private Button buttonReset; - @FXML private Button buttonFilter; - @FXML private Button buttonCategoryAll; - @FXML private Button buttonCategoryNone; - @FXML private Button buttonTagsAll; - @FXML private Button buttonTagsNone; - @FXML private Label labelSeparator; - @FXML private Label labelSeparatorHorizontalLeft; - @FXML private Label labelSeparatorHorizontalRight; - - private Stage parentStage; - private Controller controller; - private FilterSettings filterSetttings; - private ArrayList<Tag> allTags; - - public FilterController(Stage parentStage, Controller controller, FilterSettings filterSettings) - { - this.parentStage = parentStage; - this.controller = controller; - this.filterSetttings = filterSettings; - load("/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml", Localization.getBundle()); - getStage().showAndWait(); - } - - @Override - public void initStage(Stage stage) - { - stage.initOwner(parentStage); - stage.initModality(Modality.APPLICATION_MODAL); - stage.setTitle(Localization.getString(Strings.TITLE_FILTER)); - stage.getIcons().add(controller.getIcon()); - stage.setResizable(true); - stage.setMinHeight(600); - stage.setMinWidth(475); - } - - @Override - public void init() - { - applyStyle(); - - for(Category currentCategory : controller.getCategoryHandler().getCategories()) - { - CheckBox newCheckBox = new CheckBox(); - newCheckBox.setText(currentCategory.getName()); - newCheckBox.setUserData(currentCategory.getID()); - newCheckBox.setStyle("-fx-font-size: 14;"); - vboxCategories.getChildren().add(newCheckBox); - } - - try - { - ServerTagConnection connection = new ServerTagConnection(controller.getSettings()); - allTags = connection.getTags(); - for(Tag currentTag : allTags) - { - CheckBox newCheckBox = new CheckBox(); - newCheckBox.setText(currentTag.getName()); - newCheckBox.setUserData(currentTag.getID()); - newCheckBox.setStyle("-fx-font-size: 14;"); - vboxTags.getChildren().add(newCheckBox); - } - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - return; - } - - textFieldSearch.setOnKeyPressed((event)->{ - if(event.getCode().equals(KeyCode.ENTER)) - { - filter(); - } - }); - - vboxMain.prefWidthProperty().bind(scrollPane.widthProperty().subtract(5)); - vboxMain.prefHeightProperty().bind(scrollPane.heightProperty().subtract(5)); - preselect(); - } - - private void preselect() - { - checkBoxIncome.setSelected(filterSetttings.isIncomeAllowed()); - checkBoxPayment.setSelected(filterSetttings.isPaymentAllowed()); - checkBoxNoRepeating.setSelected(filterSetttings.isNoRepeatingAllowed()); - checkBoxMonthlyRepeating.setSelected(filterSetttings.isMonthlyRepeatingAllowed()); - checkBoxRepeatEveryXDays.setSelected(filterSetttings.isRepeatingEveryXDaysAllowed()); - - ArrayList<Integer> allowedCategoryIDs = filterSetttings.getAllowedCategoryIDs(); - for(Node node : vboxCategories.getChildren()) - { - CheckBox currentCheckBox = (CheckBox)node; - if(allowedCategoryIDs == null || allowedCategoryIDs.contains(currentCheckBox.getUserData())) - { - currentCheckBox.setSelected(true); - } - } - - ArrayList<Integer> allowedTagIDs = filterSetttings.getAllowedTagIDs(); - for(Node node : vboxTags.getChildren()) - { - CheckBox currentCheckBox = (CheckBox)node; - if(allowedTagIDs == null || allowedTagIDs.contains(currentCheckBox.getUserData())) - { - currentCheckBox.setSelected(true); - } - } - - textFieldSearch.setText(filterSetttings.getName()); - } - - public void filter() - { - boolean isIncomeAllowed = checkBoxIncome.isSelected(); - boolean isPaymentAllowed = checkBoxPayment.isSelected(); - - boolean isNoRepeatingAllowed = checkBoxNoRepeating.isSelected(); - boolean isMonthlyRepeatingAllowed = checkBoxMonthlyRepeating.isSelected(); - boolean isRepeatingEveryXDaysAllowed = checkBoxRepeatEveryXDays.isSelected(); - - ArrayList<Integer> allowedCategoryIDs = new ArrayList<>(); - for(Node node : vboxCategories.getChildren()) - { - CheckBox currentCheckBox = (CheckBox)node; - if(currentCheckBox.isSelected()) - { - allowedCategoryIDs.add((int)currentCheckBox.getUserData()); - } - } - - if(allowedCategoryIDs.size() == controller.getCategoryHandler().getCategories().size()) - { - allowedCategoryIDs = null; - } - - String name = textFieldSearch.getText(); - if(name != null && name.equals("")) - { - name = null; - } - - ArrayList<Integer> allowedTagIDs = new ArrayList<>(); - for(Node node : vboxTags.getChildren()) - { - CheckBox currentCheckBox = (CheckBox)node; - if(currentCheckBox.isSelected()) - { - allowedTagIDs.add((int)currentCheckBox.getUserData()); - } - } - - if(allowedTagIDs.size() == allTags.size()) - { - allowedTagIDs = null; - } - - FilterSettings newFilterSettings = new FilterSettings(isIncomeAllowed, isPaymentAllowed, isNoRepeatingAllowed, isMonthlyRepeatingAllowed, isRepeatingEveryXDaysAllowed, allowedCategoryIDs, allowedTagIDs, name); - controller.setFilterSettings(newFilterSettings); - controller.refresh(newFilterSettings); - getStage().close(); - } - - public void reset() - { - filterSetttings = new FilterSettings(); - getStage().close(); - controller.setFilterSettings(filterSetttings); - controller.refresh(filterSetttings); - } - - public void cancel() - { - getStage().close(); - } - - public void enableAllCategories() - { - for(Node node : vboxCategories.getChildren()) - { - ((CheckBox)node).setSelected(true); - } - } - - public void disableAllCategories() - { - for(Node node : vboxCategories.getChildren()) - { - ((CheckBox)node).setSelected(false); - } - } - - public void enableAllTags() - { - for(Node node : vboxTags.getChildren()) - { - ((CheckBox)node).setSelected(true); - } - } - - public void disableAllTags() - { - for(Node node : vboxTags.getChildren()) - { - ((CheckBox)node).setSelected(false); - } - } - - @Override - public void applyStyle() - { - buttonCancel.setGraphic(new FontIcon(FontIconType.TIMES, 17, Color.WHITE)); - buttonReset.setGraphic(new FontIcon(FontIconType.UNDO, 17, Color.WHITE)); - buttonFilter.setGraphic(new FontIcon(FontIconType.FILTER, 17, Color.WHITE)); - - scrollPane.setStyle("-fx-background-color: transparent"); - - labelSeparator.setStyle("-fx-background-color: #CCCCCC;"); - labelSeparator.setMinWidth(1); - labelSeparator.setMaxWidth(1); - - labelSeparatorHorizontalLeft.setStyle("-fx-background-color: #CCCCCC;"); - labelSeparatorHorizontalLeft.setMinHeight(1); - labelSeparatorHorizontalLeft.setMaxHeight(1); - - labelSeparatorHorizontalRight.setStyle("-fx-background-color: #CCCCCC;"); - labelSeparatorHorizontalRight.setMinHeight(1); - labelSeparatorHorizontalRight.setMaxHeight(1); - - buttonCancel.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - buttonReset.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - buttonFilter.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - buttonCategoryAll.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 13;"); - buttonCategoryNone.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 13;"); - buttonTagsAll.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 13;"); - buttonTagsNone.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 13;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/HomeController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/HomeController.java deleted file mode 100644 index 3f5086600..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/HomeController.java +++ /dev/null @@ -1,108 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.Budget; -import de.deadlocker8.budgetmaster.logic.category.CategoryBudget; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Refreshable; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.cells.CategoryBudgetCell; -import javafx.application.Platform; -import javafx.beans.value.ChangeListener; -import javafx.fxml.FXML; -import javafx.scene.control.Label; -import javafx.scene.control.ListView; -import javafx.scene.control.ProgressBar; -import javafx.scene.layout.AnchorPane; -import tools.ConvertTo; -import tools.Localization; - -public class HomeController implements Refreshable, Styleable -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private Label labelBudget; - @FXML private Label labelStartBudget; - @FXML private ProgressBar progressBar; - @FXML private ListView<CategoryBudget> listView; - - private Controller controller; - - public void init(Controller controller) - { - this.controller = controller; - - HomeController thisController = this; - listView.setCellFactory(param -> new CategoryBudgetCell(thisController)); - - Label labelPlaceholder = new Label(Localization.getString(Strings.HOME_PLACEHOLDER)); - labelPlaceholder.setStyle("-fx-font-size: 16"); - listView.setPlaceholder(labelPlaceholder); - - listView.getSelectionModel().selectedIndexProperty().addListener((ChangeListener<Number>)(observable, oldValue, newValue) -> Platform.runLater(() -> listView.getSelectionModel().select(-1))); - - applyStyle(); - } - - private void refreshListView() - { - listView.getItems().clear(); - - ArrayList<CategoryBudget> categoryBudgets = controller.getCategoryBudgets(); - if(categoryBudgets != null) - { - listView.getItems().setAll(categoryBudgets); - } - } - - private void refreshCounter() - { - if(controller.getPaymentHandler().getPayments() != null) - { - Budget budget = new Budget(controller.getPaymentHandler().getPayments()); - double remaining = budget.getIncomeSum() + budget.getPaymentSum(); - String currency = "€"; - if(controller.getSettings() != null) - { - currency = controller.getSettings().getCurrency(); - } - labelBudget.setText(Helpers.getCurrencyString(remaining, currency)); - if(remaining <= 0) - { - labelBudget.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT_RED)); - } - else - { - labelBudget.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - } - labelStartBudget.setText(Localization.getString(Strings.HOME_BUDGET, Helpers.getCurrencyString(budget.getIncomeSum(), currency))); - - double factor = remaining / budget.getIncomeSum(); - if(factor < 0) - { - factor = 0; - } - progressBar.setProgress(factor); - } - } - - public Controller getController() - { - return controller; - } - - @Override - public void refresh() - { - refreshListView(); - refreshCounter(); - } - - @Override - public void applyStyle() - { - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ModalController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ModalController.java deleted file mode 100644 index 24545fc52..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ModalController.java +++ /dev/null @@ -1,75 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.util.Optional; - -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import javafx.fxml.FXML; -import javafx.scene.control.Alert; -import javafx.scene.control.Button; -import javafx.scene.control.ButtonType; -import javafx.scene.control.DialogPane; -import javafx.scene.control.Label; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyEvent; -import javafx.stage.Modality; -import javafx.stage.Stage; -import javafx.stage.WindowEvent; -import logger.Logger; -import tools.Localization; - -public class ModalController -{ - @FXML private Label labelMessage; - private Alert alert; - - public void init(Controller controller, Stage stage, String message) - { - labelMessage.setText(message); - stage.setOnCloseRequest((e)->{ - alert = new Alert(AlertType.CONFIRMATION); - alert.setTitle(Localization.getString(Strings.INFO_TITLE_SHUTDOWN)); - alert.initModality(Modality.APPLICATION_MODAL); - alert.initOwner(controller.getStage()); - alert.setHeaderText(""); - alert.setContentText(Localization.getString(Strings.INFO_TEXT_SHUTDOWN)); - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(controller.getIcon()); - - ButtonType buttonTypeOne = new ButtonType(Localization.getString(Strings.CANCEL)); - ButtonType buttonTypeTwo = new ButtonType(Localization.getString(Strings.OK)); - alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeTwo); - - DialogPane dialogPane = alert.getDialogPane(); - dialogPane.getButtonTypes().stream().map(dialogPane::lookupButton).forEach(button -> button.addEventHandler(KeyEvent.KEY_PRESSED, (event) -> { - if(KeyCode.ENTER.equals(event.getCode()) && event.getTarget() instanceof Button) - { - ((Button)event.getTarget()).fire(); - } - })); - - Optional<ButtonType> result = alert.showAndWait(); - if (result.get() == buttonTypeTwo) - { - Logger.debug("Shutting down during operation due to client request..."); - controller.getStage().fireEvent(new WindowEvent(controller.getStage(), WindowEvent.WINDOW_CLOSE_REQUEST)); - } - - e.consume(); - }); - } - - public void setMessage(String message) - { - labelMessage.setText(message); - } - - public void closeAlert() - { - if(alert != null && alert.isShowing()) - { - Button cancelButton = ( Button ) alert.getDialogPane().lookupButton(alert.getButtonTypes().get(0)); - cancelButton.fire(); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/NewCategoryController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/NewCategoryController.java deleted file mode 100644 index 91dfbd525..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/NewCategoryController.java +++ /dev/null @@ -1,214 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.util.ArrayList; - -import org.controlsfx.control.PopOver; -import org.controlsfx.control.PopOver.ArrowLocation; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.colorPick.ColorView; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.fxml.FXML; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.TextField; -import javafx.scene.paint.Color; -import javafx.stage.Modality; -import javafx.stage.Stage; -import javafx.util.Duration; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.Localization; - -public class NewCategoryController extends BaseController implements Styleable -{ - @FXML private TextField textFieldName; - @FXML private Button buttonColor; - @FXML private Button buttonCancel; - @FXML private Button buttonSave; - - private Stage parentStage; - private Controller controller; - private CategoryController categoryController; - private boolean edit; - private Color color; - private PopOver colorChooser; - private ColorView colorView; - private Category category; - - public NewCategoryController(Stage parentStage, Controller controller, CategoryController categoryController, boolean edit, Category category) - { - this.parentStage = parentStage; - this.controller = controller; - this.categoryController = categoryController; - this.edit = edit; - this.color = null; - this.category = category; - load("/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml", Localization.getBundle()); - getStage().showAndWait(); - } - - @Override - public void initStage(Stage stage) - { - stage.initOwner(parentStage); - stage.initModality(Modality.APPLICATION_MODAL); - - if(edit) - { - stage.setTitle(Localization.getString(Strings.TITLE_CATEGORY_EDIT)); - } - else - { - stage.setTitle(Localization.getString(Strings.TITLE_CATEGORY_NEW)); - } - - stage.getIcons().add(controller.getIcon()); - stage.setResizable(false); - stage.getScene().getStylesheets().add("/de/deadlocker8/budgetmaster/ui/style.css"); - } - - @Override - public void init() - { - applyStyle(); - - buttonColor.prefWidthProperty().bind(textFieldName.widthProperty()); - - ArrayList<Color> colors = Helpers.getCategoryColorList(); - - buttonColor.setOnMouseClicked((e) -> { - - if(colorChooser == null || !colorChooser.isShowing()) - { - colorChooser = new PopOver(); - colorChooser.setContentNode(colorView); - colorChooser.setDetachable(false); - colorChooser.setAutoHide(true); - colorChooser.setCornerRadius(5); - colorChooser.setArrowLocation(ArrowLocation.LEFT_CENTER); - colorChooser.setOnHiding(event -> colorChooser = null); - colorChooser.show(buttonColor); - } - }); - - getStage().setOnCloseRequest(event -> { - if(colorChooser != null) - { - colorChooser.hide(Duration.millis(0)); - } - }); - - if(edit) - { - textFieldName.setText(category.getName()); - colorView = new ColorView(Color.web(category.getColor()), colors, this, (finishColor) -> { - setColor(finishColor); - }); - setColor(Color.web(category.getColor())); - } - else - { - colorView = new ColorView(colors.get(0), colors, this, (finishColor) -> { - setColor(finishColor); - }); - setColor(colors.get(0)); - } - } - - private void setColor(Color color) - { - this.color = color; - buttonColor.setStyle("-fx-border-color: #000000; -fx-border-width: 2; -fx-border-radius: 5; -fx-background-radius: 5; -fx-background-color: " + ConvertTo.toRGBHex(color)); - if(colorChooser != null) - { - colorChooser.hide(Duration.millis(0)); - } - } - - public void save() - { - String name = textFieldName.getText(); - if(name == null || name.equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_CATEGORY_NAME), - controller.getIcon(), - controller.getStage(), - null, - false); - return; - } - - if(name.length() > 45) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_NAME_CHARACTER_LIMIT_REACHED_45), - controller.getIcon(), - controller.getStage(), - null, - false); - return; - } - - if(edit) - { - category.setName(name); - category.setColor(ConvertTo.toRGBHexWithoutOpacity(color)); - ServerConnection connection; - try - { - connection = new ServerConnection(controller.getSettings()); - connection.updateCategory(category); - } - catch(Exception e) - { - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - } - else - { - Category newCategory = new Category(name, ConvertTo.toRGBHexWithoutOpacity(color)); - ServerConnection connection; - try - { - connection = new ServerConnection(controller.getSettings()); - connection.addCategory(newCategory); - } - catch(Exception e) - { - controller.showConnectionErrorAlert(e.getMessage()); - } - } - - getStage().close(); - categoryController.getController().refresh(controller.getFilterSettings()); - } - - public void cancel() - { - getStage().close(); - } - - @Override - public void applyStyle() - { - buttonCancel.setGraphic(new FontIcon(FontIconType.TIMES, 17, Color.WHITE)); - buttonSave.setGraphic(new FontIcon(FontIconType.SAVE, 17, Color.WHITE)); - - buttonCancel.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - buttonSave.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - buttonColor.setStyle("-fx-border-color: #000000; -fx-border-width: 2; -fx-border-radius: 5; -fx-background-radius: 5;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/NewPaymentController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/NewPaymentController.java deleted file mode 100644 index 66a16cd4a..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/NewPaymentController.java +++ /dev/null @@ -1,707 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.math.BigDecimal; -import java.time.LocalDate; -import java.util.ArrayList; - -import org.joda.time.DateTime; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerTagConnection; -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.cells.ButtonCategoryCell; -import de.deadlocker8.budgetmasterclient.ui.cells.RepeatingDayCell; -import de.deadlocker8.budgetmasterclient.ui.cells.SmallCategoryCell; -import de.deadlocker8.budgetmasterclient.ui.tagField.TagField; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.fxml.FXML; -import javafx.geometry.Insets; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.CheckBox; -import javafx.scene.control.ComboBox; -import javafx.scene.control.DateCell; -import javafx.scene.control.DatePicker; -import javafx.scene.control.Label; -import javafx.scene.control.RadioButton; -import javafx.scene.control.ScrollPane; -import javafx.scene.control.Spinner; -import javafx.scene.control.SpinnerValueFactory; -import javafx.scene.control.TextArea; -import javafx.scene.control.TextField; -import javafx.scene.control.ToggleGroup; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.VBox; -import javafx.scene.paint.Color; -import javafx.stage.Modality; -import javafx.stage.Stage; -import logger.Logger; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.Localization; - -public class NewPaymentController extends BaseController implements Styleable -{ - @FXML private ScrollPane scrollPane; - @FXML private VBox vboxContent; - @FXML private TextField textFieldName; - @FXML private TextField textFieldAmount; - @FXML private Button buttonCancel; - @FXML private Button buttonSave; - @FXML private ComboBox<Category> comboBoxCategory; - @FXML private DatePicker datePicker; - @FXML private DatePicker datePickerEnddate; - @FXML private Spinner<Integer> spinnerRepeatingPeriod; - @FXML private ComboBox<Integer> comboBoxRepeatingDay; - @FXML private CheckBox checkBoxRepeat; - @FXML private RadioButton radioButtonPeriod; - @FXML private RadioButton radioButtonDay; - @FXML private Label labelText1, labelText2, labelText3; - @FXML private TextArea textArea; - @FXML private HBox hboxTags; - @FXML private Button buttonTagsHelp; - @FXML private CheckBox checkBoxEndDate; - - private Stage parentStage; - private Controller controller; - private PaymentController paymentController; - private boolean isPayment; - private boolean edit; - private Payment payment; - private ButtonCategoryCell buttonCategoryCell; - private TagField tagField; - private ArrayList<Tag> previousTags; - - public NewPaymentController(Stage parentStage, Controller controller, PaymentController paymentController, boolean isPayment, boolean edit, Payment payment) - { - this.parentStage = parentStage; - this.controller = controller; - this.paymentController = paymentController; - this.isPayment = isPayment; - this.edit = edit; - this.payment = payment; - load("/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml", Localization.getBundle()); - getStage().showAndWait(); - } - - @Override - public void initStage(Stage stage) - { - stage.initOwner(parentStage); - stage.initModality(Modality.APPLICATION_MODAL); - String titlePart; - - titlePart = isPayment ? Localization.getString(Strings.TITLE_PAYMENT) : Localization.getString(Strings.TITLE_INCOME); - - if(edit) - { - stage.setTitle(Localization.getString(Strings.TITLE_PAYMENT_EDIT, titlePart)); - } - else - { - stage.setTitle(Localization.getString(Strings.TITLE_PAYMENT_NEW, titlePart)); - } - - stage.getIcons().add(controller.getIcon()); - stage.setResizable(true); - stage.setMinHeight(600); - stage.setMinWidth(450); - stage.getScene().getStylesheets().add("/de/deadlocker8/budgetmaster/ui/style.css"); - } - - @Override - public void init() - { - vboxContent.prefWidthProperty().bind(scrollPane.widthProperty().subtract(25)); - vboxContent.prefHeightProperty().bind(scrollPane.heightProperty().subtract(10)); - - applyStyle(); - - tagField = new TagField(new ArrayList<Tag>(), new ArrayList<Tag>(), this); - hboxTags.getChildren().add(tagField); - tagField.maxWidthProperty().bind(hboxTags.widthProperty()); - HBox.setHgrow(tagField, Priority.ALWAYS); - - previousTags = new ArrayList<>(); - - initRepeatingArea(); - - if(edit) - { - prefill(); - } - else - { - comboBoxCategory.setValue(controller.getCategoryHandler().getCategory(1)); - checkBoxRepeat.setSelected(false); - radioButtonPeriod.setSelected(true); - toggleRepeatingArea(false); - - //preselect correct month and year - DateTime currentDate = controller.getCurrentDate(); - if(DateTime.now().getDayOfMonth() > currentDate.dayOfMonth().withMaximumValue().getDayOfMonth()) - { - currentDate = currentDate.dayOfMonth().withMaximumValue(); - } - - LocalDate currentLocalDate = LocalDate.now().withYear(currentDate.getYear()) - .withMonth(currentDate.getMonthOfYear()) - .withDayOfMonth(currentDate.getDayOfMonth()); - datePicker.setValue(currentLocalDate); - datePickerEnddate.setValue(currentLocalDate); - - try - { - ServerTagConnection serverTagConnection = new ServerTagConnection(controller.getSettings()); - tagField.setAllTags(serverTagConnection.getTags()); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - } - - datePicker.setEditable(false); - } - - public Controller getController() - { - return controller; - } - - private void initComboBoxCategory() - { - buttonCategoryCell = new ButtonCategoryCell(Color.WHITE); - comboBoxCategory.setButtonCell(buttonCategoryCell); - comboBoxCategory.setStyle("-fx-border-color: #000000; -fx-border-width: 2; -fx-border-radius: 5; -fx-background-radius: 5;"); - comboBoxCategory.valueProperty().addListener((listener, oldValue, newValue) -> { - comboBoxCategory.setStyle("-fx-background-color: " + newValue.getColor() + "; -fx-border-color: #000000; -fx-border-width: 2; -fx-border-radius: 5; -fx-background-radius: 5;"); - buttonCategoryCell.setColor(Color.web(newValue.getColor())); - }); - comboBoxCategory.setCellFactory((view) -> { - return new SmallCategoryCell(); - }); - - comboBoxCategory.getItems().clear(); - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - ArrayList<Category> categories = connection.getCategories(); - if(categories != null) - { - for(Category currentCategory : categories) - { - if(currentCategory.getID() != 2) - { - comboBoxCategory.getItems().add(currentCategory); - } - } - } - } - catch(Exception e) - { - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - getStage().close(); - return; - } - } - - private void initRepeatingArea() - { - checkBoxRepeat.selectedProperty().addListener((listener, oldValue, newValue) -> { - toggleRepeatingArea(newValue); - }); - - initSpinnerRepeatingPeriod(); - initComboBoxRepeatingDay(); - initComboBoxCategory(); - - final ToggleGroup toggleGroup = new ToggleGroup(); - radioButtonPeriod.setToggleGroup(toggleGroup); - radioButtonDay.setToggleGroup(toggleGroup); - radioButtonPeriod.selectedProperty().addListener((listener, oldValue, newValue) -> { - toggleRadioButtonPeriod(newValue); - }); - - datePickerEnddate.setDayCellFactory((p) -> new DateCell() - { - @Override - public void updateItem(LocalDate ld, boolean bln) - { - super.updateItem(ld, bln); - - if(datePicker.getValue() != null && ld.isBefore(datePicker.getValue())) - { - setDisable(true); - setStyle("-fx-background-color: #ffc0cb;"); - } - } - }); - - checkBoxEndDate.selectedProperty().addListener((obs, oldValue, newValue)->{ - datePickerEnddate.setDisable(!newValue); - }); - } - - private void initSpinnerRepeatingPeriod() - { - SpinnerValueFactory<Integer> valueFactory = new SpinnerValueFactory.IntegerSpinnerValueFactory(1, 1000, 0); - spinnerRepeatingPeriod.setValueFactory(valueFactory); - spinnerRepeatingPeriod.setEditable(false); - spinnerRepeatingPeriod.focusedProperty().addListener((observable, oldValue, newValue) -> { - if(!newValue) - { - spinnerRepeatingPeriod.increment(0); // won't change value, but will commit editor - } - }); - } - - private void initComboBoxRepeatingDay() - { - comboBoxRepeatingDay.setCellFactory((view) -> { - return new RepeatingDayCell(); - }); - ArrayList<Integer> days = new ArrayList<>(); - for(int i = 1; i <= 31; i++) - { - days.add(i); - } - comboBoxRepeatingDay.getItems().addAll(days); - comboBoxRepeatingDay.setValue(1); - } - - private void prefill() - { - textFieldName.setText(payment.getName()); - textFieldAmount.setText(Helpers.NUMBER_FORMAT.format(Math.abs(payment.getAmount()/100.0)).replace(".", ",")); - comboBoxCategory.setValue(controller.getCategoryHandler().getCategory(payment.getCategoryID())); - datePicker.setValue(LocalDate.parse(payment.getDate())); - textArea.setText(payment.getDescription()); - - try - { - ServerTagConnection serverTagConnection = new ServerTagConnection(controller.getSettings()); - tagField.setAllTags(serverTagConnection.getTags()); - - if(payment instanceof RepeatingPayment) - { - //search gets RepeatingPayments instead of RepeatingPaymenEntries --> convert it to RepeatingPaymentEntry to maintain compatibility - RepeatingPayment tempPayment = (RepeatingPayment)payment; - payment = new RepeatingPaymentEntry(-1, - tempPayment.getID(), - tempPayment.getDate(), - tempPayment.getAmount(), - tempPayment.getCategoryID(), - tempPayment.getName(), - tempPayment.getDescription(), - tempPayment.getRepeatInterval(), - tempPayment.getRepeatEndDate(), - tempPayment.getRepeatMonthDay()); - } - - if(payment instanceof RepeatingPaymentEntry) - { - try - { - RepeatingPaymentEntry currentPayment = (RepeatingPaymentEntry)payment; - previousTags = serverTagConnection.getAllTagsForRepeatingPayment(currentPayment.getRepeatingPaymentID()); - tagField.setTags(new ArrayList<>(previousTags)); - - ServerConnection connection = new ServerConnection(controller.getSettings()); - RepeatingPayment repeatingPayment = connection.getRepeatingPayment(currentPayment.getRepeatingPaymentID()); - datePicker.setValue(LocalDate.parse(repeatingPayment.getDate())); - - //repeates every x days - if(currentPayment.getRepeatInterval() != 0) - { - checkBoxRepeat.setSelected(true); - radioButtonPeriod.setSelected(true); - toggleRepeatingArea(true); - spinnerRepeatingPeriod.setValueFactory(new SpinnerValueFactory.IntegerSpinnerValueFactory(0, 1000, currentPayment.getRepeatInterval())); - } - //repeat every month on day x - else - { - checkBoxRepeat.setSelected(true); - radioButtonDay.setSelected(true); - toggleRepeatingArea(true); - comboBoxRepeatingDay.getSelectionModel().select(currentPayment.getRepeatMonthDay()-1); - } - - checkBoxEndDate.setSelected(currentPayment.getRepeatEndDate() != null); - if(currentPayment.getRepeatEndDate() != null) - { - datePickerEnddate.setValue(LocalDate.parse(currentPayment.getRepeatEndDate())); - } - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - } - else - { - previousTags = serverTagConnection.getAllTagsForPayment((NormalPayment)payment); - tagField.setTags(new ArrayList<>(previousTags)); - checkBoxRepeat.setSelected(false); - radioButtonPeriod.setSelected(true); - toggleRepeatingArea(false); - } - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - } - - private void showWarning(String message) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - message, - controller.getIcon(), - controller.getStage(), - null, - false); - } - - @FXML - public void save() - { - String name = textFieldName.getText(); - if(name == null || name.equals("")) - { - showWarning(Localization.getString(Strings.WARNING_EMPTY_PAYMENT_NAME)); - return; - } - - if(name.length() > 150) - { - showWarning(Localization.getString(Strings.WARNING_NAME_CHARACTER_LIMIT_REACHED_150)); - return; - } - - String amountText = textFieldAmount.getText(); - if(!amountText.matches("^-?\\d+(,\\d+)?(\\.\\d+)?$")) - { - showWarning(Localization.getString(Strings.WARNING_PAYMENT_AMOUNT)); - return; - } - - LocalDate date = datePicker.getValue(); - if(date == null) - { - showWarning(Localization.getString(Strings.WARNING_EMPTY_PAYMENT_DATE)); - return; - } - - int amount = 0; - amount = new BigDecimal(amountText.replace(",", ".")).multiply(new BigDecimal(100)).toBigInteger().intValue(); - if(isPayment) - { - amount = -amount; - } - - String description = textArea.getText(); - if(description != null) - { - if(description.length() > 200) - { - showWarning(Localization.getString(Strings.WARNING_DESCRIPTION_CHARACTER_LIMIT_REACHED_150)); - return; - } - } - else - { - description = ""; - } - - Payment finalPayment; - - int repeatingInterval = 0; - int repeatingDay = 0; - if(checkBoxRepeat.isSelected()) - { - if(radioButtonPeriod.isSelected()) - { - repeatingInterval = spinnerRepeatingPeriod.getValue(); - } - else - { - repeatingDay = comboBoxRepeatingDay.getValue(); - } - - if(repeatingInterval == 0 && repeatingDay == 0) - { - showWarning(Localization.getString(Strings.WARNING_PAYMENT_REPEATING)); - return; - } - - if(checkBoxEndDate.isSelected() && datePickerEnddate.getValue() != null && datePickerEnddate.getValue().isBefore(date)) - { - showWarning(Localization.getString(Strings.WARNING_ENDDATE_BEFORE_STARTDATE)); - return; - } - - if(edit) - { - try - { - LocalDate endDate = checkBoxEndDate.isSelected() ? datePickerEnddate.getValue() : null; - RepeatingPayment newPayment = new RepeatingPayment(-1, amount, Helpers.getDateString(date), comboBoxCategory.getValue().getID(), name, description, repeatingInterval, Helpers.getDateString(endDate), repeatingDay); - - ServerConnection connection = new ServerConnection(controller.getSettings()); - if(payment instanceof NormalPayment) - { - connection.deleteNormalPayment((NormalPayment)payment); - } - else - { - connection.deleteRepeatingPayment((RepeatingPaymentEntry)payment); - } - int id = connection.addRepeatingPayment(newPayment); - finalPayment = newPayment; - previousTags = new ArrayList<>(); - finalPayment.setID(id); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - getStage().close(); - return; - } - } - else - { - LocalDate endDate = checkBoxEndDate.isSelected() ? datePickerEnddate.getValue() : null; - RepeatingPayment newPayment = new RepeatingPayment(-1, amount, Helpers.getDateString(date), comboBoxCategory.getValue().getID(), name, description, repeatingInterval, Helpers.getDateString(endDate), repeatingDay); - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - int id = connection.addRepeatingPayment(newPayment); - finalPayment = newPayment; - finalPayment.setID(id); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(e.getMessage()); - getStage().close(); - return; - } - } - } - else - { - if(edit) - { - NormalPayment newPayment = new NormalPayment(payment.getID(), amount, Helpers.getDateString(date), comboBoxCategory.getValue().getID(), name, description); - int id = payment.getID(); - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - if(payment instanceof RepeatingPaymentEntry) - { - //if old one was repeating it should be deleted - connection.deleteRepeatingPayment((RepeatingPaymentEntry)payment); - id = connection.addNormalPayment(newPayment); - } - else - { - connection.updateNormalPayment(newPayment); - } - finalPayment = newPayment; - finalPayment.setID(id); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(e.getMessage()); - getStage().close(); - return; - } - } - else - { - NormalPayment newPayment = new NormalPayment(-1, amount, Helpers.getDateString(date), comboBoxCategory.getValue().getID(), name, description); - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - int id = connection.addNormalPayment(newPayment); - finalPayment = newPayment; - finalPayment.setID(id); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(e.getMessage()); - getStage().close(); - return; - } - } - } - - try - { - saveTags(tagField.getTags(), finalPayment); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(e.getMessage()); - } - - getStage().close(); - paymentController.getController().refresh(controller.getFilterSettings()); - } - - public void cancel() - { - getStage().close(); - } - - @FXML - public void showTagsHelp() - { - AlertGenerator.showAlert(AlertType.INFORMATION, - Localization.getString(Strings.TITLE_TAGS), - "", - Localization.getString(Strings.INFO_TAGS), - controller.getIcon(), - getStage(), - null, false); - } - - private void toggleRepeatingArea(boolean selected) - { - if(selected) - { - if(radioButtonPeriod.isSelected()) - { - spinnerRepeatingPeriod.setDisable(false); - comboBoxRepeatingDay.setDisable(true); - } - else - { - spinnerRepeatingPeriod.setDisable(true); - comboBoxRepeatingDay.setDisable(false); - } - } - else - { - spinnerRepeatingPeriod.setDisable(!selected); - comboBoxRepeatingDay.setDisable(!selected); - } - checkBoxEndDate.setDisable(!selected); - datePickerEnddate.setDisable(!selected || !checkBoxEndDate.isSelected()); - radioButtonPeriod.setDisable(!selected); - radioButtonDay.setDisable(!selected); - labelText1.setDisable(!selected); - labelText2.setDisable(!selected); - labelText3.setDisable(!selected); - } - - private void toggleRadioButtonPeriod(boolean selected) - { - spinnerRepeatingPeriod.setDisable(!selected); - labelText1.setDisable(!selected); - labelText2.setDisable(!selected); - comboBoxRepeatingDay.setDisable(selected); - labelText3.setDisable(selected); - } - - private boolean tagListContainsTag(ArrayList<Tag> tags, String name) - { - for(Tag paymentTag: tags) - { - if(name.equals(paymentTag.getName())) - { - return true; - } - } - return false; - } - - private void saveTags(ArrayList<Tag> tags, Payment payment) throws Exception - { - ServerTagConnection serverTagConnection = new ServerTagConnection(controller.getSettings()); - - //check for deleted tags - for(Tag currentTag : previousTags) - { - if(!tagListContainsTag(tags, currentTag.getName())) - { - if(payment instanceof RepeatingPayment) - { - RepeatingPayment repeatingPayment = (RepeatingPayment)payment; - serverTagConnection.deleteTagMatchForRepeatingPayment(currentTag.getID(), repeatingPayment); - } - else - { - NormalPayment normalPayment = (NormalPayment)payment; - serverTagConnection.deleteTagMatchForPayment(currentTag.getID(), normalPayment); - } - } - } - - //check for new tags - for(Tag paymentTag : tags) - { - if(!tagListContainsTag(previousTags, paymentTag.getName())) - { - String name = paymentTag.getName(); - Tag existingTag = serverTagConnection.getTag(name); - if(existingTag == null) - { - serverTagConnection.addTag(new Tag(-1, name)); - existingTag = serverTagConnection.getTag(name); - } - - if(payment instanceof RepeatingPayment) - { - RepeatingPayment repeatingPayment = (RepeatingPayment)payment; - serverTagConnection.addTagMatchForRepeatingPayment(existingTag.getID(), repeatingPayment); - } - else - { - NormalPayment normalPayment = (NormalPayment)payment; - serverTagConnection.addTagMatchForPayment(existingTag.getID(), normalPayment); - } - } - } - } - - @Override - public void applyStyle() - { - buttonTagsHelp.setGraphic(new FontIcon(FontIconType.QUESTION, 13, Colors.TEXT)); - buttonCancel.setGraphic(new FontIcon(FontIconType.TIMES, 17, Color.WHITE)); - buttonSave.setGraphic(new FontIcon(FontIconType.SAVE, 17, Color.WHITE)); - - scrollPane.setStyle("-fx-background-color: transparent"); - buttonTagsHelp.setStyle("-fx-background-color: transparent; -fx-border-radius: 50%; -fx-border-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - buttonTagsHelp.getStyleClass().add("button-hoverable"); - buttonTagsHelp.setPrefWidth(18); - buttonTagsHelp.setPrefHeight(18); - buttonTagsHelp.setPadding(new Insets(0)); - buttonCancel.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - buttonSave.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/PaymentController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/PaymentController.java deleted file mode 100644 index c05c1822a..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/PaymentController.java +++ /dev/null @@ -1,226 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.Budget; -import de.deadlocker8.budgetmaster.logic.FilterSettings; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Refreshable; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.cells.PaymentCell; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.application.Platform; -import javafx.beans.value.ChangeListener; -import javafx.fxml.FXML; -import javafx.scene.control.Button; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.control.ListView; -import javafx.scene.input.MouseEvent; -import javafx.scene.layout.AnchorPane; -import javafx.scene.paint.Color; -import javafx.util.Callback; -import logger.Logger; -import tools.ConvertTo; -import tools.Localization; - -public class PaymentController implements Refreshable, Styleable -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private Label labelIncome; - @FXML private Label labelIncomes; - @FXML private Label labelPayment; - @FXML private Label labelPayments; - @FXML private Label labelFilterActive; - @FXML private ListView<Payment> listView; - @FXML private Button buttonNewIncome; - @FXML private Button buttonFilter; - @FXML private Button buttonNewPayment; - @FXML private Button buttonSearch; - - private Controller controller; - - public void init(Controller controller) - { - this.controller = controller; - - PaymentController thisController = this; - listView.setCellFactory(new Callback<ListView<Payment>, ListCell<Payment>>() - { - @Override - public ListCell<Payment> call(ListView<Payment> param) - { - PaymentCell cell = new PaymentCell(thisController); - cell.addEventFilter(MouseEvent.MOUSE_CLICKED, event -> { - if(event.getClickCount() == 2) - { - // don't allow editing of payment "rest" - if(cell.getItem().getCategoryID() != 2) - { - payment(!cell.getItem().isIncome(), true, cell.getItem()); - } - } - }); - cell.prefWidthProperty().bind(listView.widthProperty().subtract(20)); - return cell; - } - }); - - Label labelPlaceholder = new Label(Localization.getString(Strings.PAYMENTS_PLACEHOLDER)); - labelPlaceholder.setStyle("-fx-font-size: 16"); - listView.setPlaceholder(labelPlaceholder); - - listView.getSelectionModel().selectedIndexProperty().addListener((ChangeListener<Number>)(observable, oldValue, newValue) -> Platform.runLater(() -> listView.getSelectionModel().select(-1))); - - applyStyle(); - } - - public void newIncome() - { - payment(false, false, null); - } - - public void newPayment() - { - payment(true, false, null); - } - - public void payment(boolean isPayment, boolean edit, Payment payment) - { - new NewPaymentController(controller.getStage(), controller, this, isPayment, edit, payment); - } - - private void refreshListView(Payment selectedPayment) - { - listView.getItems().clear(); - - ArrayList<Payment> payments = controller.getPaymentHandler().getPayments(); - if(payments != null) - { - listView.getItems().setAll(payments); - listView.scrollTo(controller.getPaymentHandler().getPosition(selectedPayment)); - } - } - - private void refreshCounter() - { - Budget budget = new Budget(listView.getItems()); - String currency = "€"; - if(controller.getSettings() != null) - { - currency = controller.getSettings().getCurrency(); - } - labelIncomes.setText(Helpers.getCurrencyString(budget.getIncomeSum(), currency)); - labelPayments.setText(Helpers.getCurrencyString(budget.getPaymentSum(), currency)); - } - - public void deleteNormalPayment(NormalPayment payment) - { - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - connection.deleteNormalPayment(payment); - controller.refresh(controller.getFilterSettings()); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - } - - public void deleteRepeatingPayment(RepeatingPaymentEntry payment) - { - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - connection.deleteRepeatingPayment(payment); - controller.refresh(controller.getFilterSettings()); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - } - - public void deleteFuturePayments(RepeatingPaymentEntry payment) - { - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - RepeatingPayment oldRepeatingPayment = connection.getRepeatingPayment(payment.getRepeatingPaymentID()); - RepeatingPayment newRepeatingPayment = new RepeatingPayment(payment.getID(), payment.getAmount(), oldRepeatingPayment.getDate(), payment.getCategoryID(), payment.getName(), payment.getDescription(), payment.getRepeatInterval(), payment.getDate(), payment.getRepeatMonthDay()); - connection.deleteRepeatingPayment(payment); - connection.addRepeatingPayment(newRepeatingPayment); - - controller.refresh(controller.getFilterSettings()); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - } - - public void filter() - { - new FilterController(controller.getStage(), controller, controller.getFilterSettings()); - } - - public void search() - { - new SearchController(controller.getStage(), controller); - } - - public Controller getController() - { - return controller; - } - - @Override - public void refresh() - { - refreshListView(controller.getSelectedPayment()); - refreshCounter(); - - if(controller.getFilterSettings().equals(new FilterSettings())) - { - labelFilterActive.setVisible(false); - } - else - { - labelFilterActive.setVisible(true); - } - } - - @Override - public void applyStyle() - { - buttonNewIncome.setGraphic(new FontIcon(FontIconType.DOWNLOAD, 18, Color.WHITE)); - buttonFilter.setGraphic(new FontIcon(FontIconType.FILTER, 18, Color.WHITE)); - buttonNewPayment.setGraphic(new FontIcon(FontIconType.UPLOAD, 18, Color.WHITE)); - labelFilterActive.setGraphic(new FontIcon(FontIconType.WARNING, 13, Colors.TEXT)); - buttonSearch.setGraphic(new FontIcon(FontIconType.SEARCH, 18, Color.WHITE)); - - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - labelIncome.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelIncomes.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelPayment.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelPayments.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelFilterActive.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - buttonNewIncome.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - buttonFilter.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - buttonNewPayment.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - buttonSearch.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ReportController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ReportController.java deleted file mode 100644 index e9fb0cd84..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/ReportController.java +++ /dev/null @@ -1,807 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.awt.Desktop; -import java.io.File; -import java.io.IOException; -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.Optional; - -import org.joda.time.DateTime; - -import de.deadlocker8.budgetmaster.logic.Budget; -import de.deadlocker8.budgetmaster.logic.FilterSettings; -import de.deadlocker8.budgetmaster.logic.comparators.DateComparator; -import de.deadlocker8.budgetmaster.logic.comparators.RatingComparator; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmaster.logic.report.ColumnFilter; -import de.deadlocker8.budgetmaster.logic.report.ColumnOrder; -import de.deadlocker8.budgetmaster.logic.report.ColumnType; -import de.deadlocker8.budgetmaster.logic.report.ReportGenerator; -import de.deadlocker8.budgetmaster.logic.report.ReportItem; -import de.deadlocker8.budgetmaster.logic.report.ReportPreferences; -import de.deadlocker8.budgetmaster.logic.report.ReportSorting; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.tag.TagHandler; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Refreshable; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.cells.report.table.ReportTableRatingCell; -import de.deadlocker8.budgetmasterclient.ui.cells.report.table.ReportTableRepeatingCell; -import de.deadlocker8.budgetmasterclient.utils.LoadingModal; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.application.Platform; -import javafx.beans.property.SimpleStringProperty; -import javafx.beans.property.StringProperty; -import javafx.collections.FXCollections; -import javafx.collections.ObservableList; -import javafx.fxml.FXML; -import javafx.geometry.Pos; -import javafx.scene.Node; -import javafx.scene.control.Alert; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.ButtonType; -import javafx.scene.control.CheckBox; -import javafx.scene.control.DialogPane; -import javafx.scene.control.Label; -import javafx.scene.control.TableColumn; -import javafx.scene.control.TableColumn.SortType; -import javafx.scene.control.TableView; -import javafx.scene.control.cell.PropertyValueFactory; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyEvent; -import javafx.scene.layout.AnchorPane; -import javafx.scene.layout.HBox; -import javafx.scene.paint.Color; -import javafx.stage.FileChooser; -import javafx.stage.Stage; -import logger.Logger; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.Localization; -import tools.ObjectJSONHandler; -import tools.Worker; - -public class ReportController implements Refreshable, Styleable -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private Label labelPayments; - @FXML private Label labelFilterActive; - @FXML private CheckBox checkBoxIncludeBudget; - @FXML private CheckBox checkBoxSplitTable; - @FXML private CheckBox checkBoxIncludeCategoryBudgets; - @FXML private Button buttonFilter; - @FXML private Button buttonGenerate; - @FXML private TableView<ReportItem> tableView; - - private Controller controller; - private ColumnFilter columnFilter; - private String initialReportFileName; - private ReportPreferences reportPreferences; - - private TableColumn<ReportItem, Integer> columnPosition; - private TableColumn<ReportItem, String> columnDate; - private TableColumn<ReportItem, Boolean> columnIsRepeating; - private TableColumn<ReportItem, String> columnCategory; - private TableColumn<ReportItem, Integer> columnName; - private TableColumn<ReportItem, String> columnDescription; - private TableColumn<ReportItem, String> columnTags; - private TableColumn<ReportItem, Integer> columnRating; - private TableColumn<ReportItem, String> columnAmount; - - public void init(Controller controller) - { - this.controller = controller; - initTable(); - applyStyle(); - applyReportPreferences(); - } - - private void initColumn(ColumnType columnType, boolean activated, SortType sortType) - { - switch(columnType) - { - case AMOUNT: - initColumnAmount(activated); - toggleColumn(columnAmount, activated); - if(sortType != null) - { - columnAmount.setSortType(sortType); - tableView.getSortOrder().add(columnAmount); - } - break; - case CATEGORY: - initColumnCategory(activated); - toggleColumn(columnCategory, activated); - if(sortType != null) - { - columnCategory.setSortType(sortType); - tableView.getSortOrder().add(columnCategory); - } - break; - case DATE: - initColumnDate(activated); - toggleColumn(columnDate, activated); - if(sortType != null) - { - columnDate.setSortType(sortType); - tableView.getSortOrder().add(columnDate); - } - break; - case DESCRIPTION: - initColumnDescription(activated); - toggleColumn(columnDescription, activated); - if(sortType != null) - { - columnDescription.setSortType(sortType); - tableView.getSortOrder().add(columnDescription); - } - break; - case NAME: - initColumnName(activated); - toggleColumn(columnName, activated); - if(sortType != null) - { - columnName.setSortType(sortType); - tableView.getSortOrder().add(columnName); - } - break; - case POSITION: - initColumnPosition(activated); - toggleColumn(columnPosition, activated); - if(sortType != null) - { - columnPosition.setSortType(sortType); - tableView.getSortOrder().add(columnPosition); - } - break; - case RATING: - initColumnRating(activated); - toggleColumn(columnRating, activated); - if(sortType != null) - { - columnRating.setSortType(sortType); - tableView.getSortOrder().add(columnRating); - } - break; - case REPEATING: - initColumnIsRepeating(activated); - toggleColumn(columnIsRepeating, activated); - if(sortType != null) - { - columnIsRepeating.setSortType(sortType); - tableView.getSortOrder().add(columnIsRepeating); - } - break; - case TAGS: - initColumnTags(activated); - toggleColumn(columnTags, activated); - if(sortType != null) - { - columnTags.setSortType(sortType); - tableView.getSortOrder().add(columnTags); - } - break; - default: - break; - } - } - - private void applyReportPreferences() - { - tableView.getColumns().clear(); - - Object loadedObject = ObjectJSONHandler.loadObjectFromJSON(Localization.getString(Strings.FOLDER), "reportPreferences", new ReportPreferences()); - if(loadedObject != null) - { - reportPreferences = (ReportPreferences)loadedObject; - checkBoxIncludeBudget.setSelected(reportPreferences.isIncludeBudget()); - checkBoxSplitTable.setSelected(reportPreferences.isSplitTable()); - checkBoxIncludeCategoryBudgets.setSelected(reportPreferences.isIncludeCategoryBudgets()); - - ReportSorting reportSorting = reportPreferences.getReportSorting(); - - ArrayList<ColumnType> allColumns = new ArrayList<>(Arrays.asList(ColumnType.values())); - - for(ColumnType currentType : reportPreferences.getColumnOrder().getColumns()) - { - if(currentType == reportSorting.getColumnType()) - { - initColumn(currentType, true, reportSorting.getSortType()); - } - else - { - initColumn(currentType, true, null); - } - allColumns.remove(currentType); - } - - for(ColumnType currentColumn : allColumns) - { - initColumn(currentColumn, false, null); - } - } - else - { - for(ColumnType currentType : ColumnType.values()) - { - initColumn(currentType, true, null); - } - } - } - - private void initColumnPosition(boolean activated) - { - columnPosition = new TableColumn<>(); - columnPosition.setUserData(ColumnType.POSITION); - columnPosition.setCellValueFactory(new PropertyValueFactory<ReportItem, Integer>("position")); - columnPosition.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnPosition = new HBox(); - hboxColumnPosition.setAlignment(Pos.CENTER); - hboxColumnPosition.setSpacing(3); - - CheckBox checkBoxPositions = new CheckBox(); - hboxColumnPosition.getChildren().add(checkBoxPositions); - - Label labelColumnPosition = new Label(Localization.getString(Strings.REPORT_POSITION)); - hboxColumnPosition.getChildren().add(labelColumnPosition); - - checkBoxPositions.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnPosition, c); - }); - checkBoxPositions.setSelected(activated); - columnPosition.setGraphic(hboxColumnPosition); - tableView.getColumns().add(columnPosition); - } - - private void initColumnDate(boolean activated) - { - columnDate = new TableColumn<>(); - columnDate.setUserData(ColumnType.DATE); - columnDate.setCellValueFactory(param -> { - String dateString = param.getValue().getDate(); - try - { - DateFormat format = new SimpleDateFormat("yyyy-MM-dd"); - Date date = format.parse(dateString); - DateFormat finalFormat = new SimpleDateFormat("dd.MM.yy"); - dateString = finalFormat.format(date); - return new SimpleStringProperty(dateString); - } - catch(Exception e) - { - Logger.error(e); - return null; - } - }); - columnDate.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnDate = new HBox(); - hboxColumnDate.setAlignment(Pos.CENTER); - hboxColumnDate.setSpacing(3); - - CheckBox checkBoxDate = new CheckBox(); - hboxColumnDate.getChildren().add(checkBoxDate); - - Label labelComlumnDate = new Label(Localization.getString(Strings.REPORT_DATE)); - hboxColumnDate.getChildren().add(labelComlumnDate); - - checkBoxDate.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnDate, c); - }); - checkBoxDate.setSelected(activated); - columnDate.setGraphic(hboxColumnDate); - columnDate.setComparator(new DateComparator()); - tableView.getColumns().add(columnDate); - } - - private void initColumnIsRepeating(boolean activated) - { - columnIsRepeating = new TableColumn<>(); - columnIsRepeating.setUserData(ColumnType.REPEATING); - columnIsRepeating.setCellValueFactory(new PropertyValueFactory<ReportItem, Boolean>("repeating")); - columnIsRepeating.setCellFactory(param -> { - return new ReportTableRepeatingCell(); - }); - columnIsRepeating.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnIsRepeating = new HBox(); - hboxColumnIsRepeating.setAlignment(Pos.CENTER); - hboxColumnIsRepeating.setSpacing(3); - - CheckBox checkBoxRepeating = new CheckBox(); - hboxColumnIsRepeating.getChildren().add(checkBoxRepeating); - - Label labelColumnIsRepeating = new Label(Localization.getString(Strings.REPORT_REPEATING)); - hboxColumnIsRepeating.getChildren().add(labelColumnIsRepeating); - - checkBoxRepeating.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnIsRepeating, c); - }); - checkBoxRepeating.setSelected(activated); - - columnIsRepeating.setGraphic(hboxColumnIsRepeating); - tableView.getColumns().add(columnIsRepeating); - } - - private void initColumnCategory(boolean activated) - { - columnCategory = new TableColumn<>(); - columnCategory.setUserData(ColumnType.CATEGORY); - columnCategory.setCellValueFactory(param -> new SimpleStringProperty(param.getValue().getCategory().getName())); - columnCategory.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnCategory = new HBox(); - hboxColumnCategory.setAlignment(Pos.CENTER); - hboxColumnCategory.setSpacing(3); - - CheckBox checkBoxCategory = new CheckBox(); - hboxColumnCategory.getChildren().add(checkBoxCategory); - - Label labelColumnCategory = new Label(Localization.getString(Strings.REPORT_CATEGORY)); - hboxColumnCategory.getChildren().add(labelColumnCategory); - - checkBoxCategory.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnCategory, c); - }); - checkBoxCategory.setSelected(activated); - columnCategory.setGraphic(hboxColumnCategory); - tableView.getColumns().add(columnCategory); - } - - private void initColumnName(boolean activated) - { - columnName = new TableColumn<>(); - columnName.setUserData(ColumnType.NAME); - columnName.setCellValueFactory(new PropertyValueFactory<ReportItem, Integer>("name")); - columnName.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnName = new HBox(); - hboxColumnName.setAlignment(Pos.CENTER); - hboxColumnName.setSpacing(3); - - CheckBox checkBoxName = new CheckBox(); - hboxColumnName.getChildren().add(checkBoxName); - - Label labelColumnName = new Label(Localization.getString(Strings.REPORT_NAME)); - hboxColumnName.getChildren().add(labelColumnName); - - checkBoxName.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnName, c); - }); - checkBoxName.setSelected(activated); - columnName.setGraphic(hboxColumnName); - tableView.getColumns().add(columnName); - } - - private void initColumnDescription(boolean activated) - { - columnDescription = new TableColumn<>(); - columnDescription.setUserData(ColumnType.DESCRIPTION); - columnDescription.setCellValueFactory(new PropertyValueFactory<ReportItem, String>("description")); - columnDescription.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnDescription = new HBox(); - hboxColumnDescription.setAlignment(Pos.CENTER); - hboxColumnDescription.setSpacing(3); - - CheckBox checkBoxDescription = new CheckBox(); - hboxColumnDescription.getChildren().add(checkBoxDescription); - - Label labelColumnDescription = new Label(Localization.getString(Strings.REPORT_DESCRIPTION)); - hboxColumnDescription.getChildren().add(labelColumnDescription); - - checkBoxDescription.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnDescription, c); - }); - checkBoxDescription.setSelected(activated); - columnDescription.setGraphic(hboxColumnDescription); - tableView.getColumns().add(columnDescription); - } - - private void initColumnTags(boolean activated) - { - columnTags = new TableColumn<>(); - columnTags.setUserData(ColumnType.TAGS); - columnTags.setCellValueFactory(new PropertyValueFactory<ReportItem, String>("tags")); - columnTags.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnTags = new HBox(); - hboxColumnTags.setAlignment(Pos.CENTER); - hboxColumnTags.setSpacing(3); - - CheckBox checkBoxTags = new CheckBox(); - hboxColumnTags.getChildren().add(checkBoxTags); - - Label labelColumnTags = new Label(Localization.getString(Strings.REPORT_TAGS)); - hboxColumnTags.getChildren().add(labelColumnTags); - - checkBoxTags.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnTags, c); - }); - checkBoxTags.setSelected(activated); - columnTags.setGraphic(hboxColumnTags); - tableView.getColumns().add(columnTags); - } - - private void initColumnRating(boolean activated) - { - columnRating = new TableColumn<>(); - columnRating.setUserData(ColumnType.RATING); - columnRating.setCellValueFactory(new PropertyValueFactory<ReportItem, Integer>("amount")); - columnRating.setCellFactory(param -> { - return new ReportTableRatingCell(); - }); - columnRating.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnRating = new HBox(); - hboxColumnRating.setAlignment(Pos.CENTER); - hboxColumnRating.setSpacing(3); - - CheckBox checkBoxRating = new CheckBox(); - hboxColumnRating.getChildren().add(checkBoxRating); - - Label labelColumnRating = new Label(Localization.getString(Strings.REPORT_RATING)); - hboxColumnRating.getChildren().add(labelColumnRating); - - checkBoxRating.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnRating, c); - }); - checkBoxRating.setSelected(activated); - columnRating.setGraphic(hboxColumnRating); - columnRating.setComparator(new RatingComparator()); - tableView.getColumns().add(columnRating); - } - - private void toggleColumn(TableColumn<ReportItem, ?> column, boolean activated) - { - String style = activated ? "" : "-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_REPORT_TABLE_HEADER_DISABLED); - Node graphic = column.getGraphic(); - if(graphic != null) - { - graphic.setStyle(style); - } - columnFilter.toggleColumn((ColumnType)column.getUserData(), activated); - } - - private void initColumnAmount(boolean activated) - { - columnAmount = new TableColumn<>(); - columnAmount.setUserData(ColumnType.AMOUNT); - columnAmount.setCellValueFactory(param -> { - StringProperty value = new SimpleStringProperty(); - double amount = param.getValue().getAmount() / 100.0; - value.set(Helpers.getCurrencyString(amount, controller.getSettings().getCurrency())); - return value; - }); - columnAmount.setStyle("-fx-alignment: CENTER;"); - - HBox hboxColumnAmount = new HBox(); - hboxColumnAmount.setAlignment(Pos.CENTER); - hboxColumnAmount.setSpacing(3); - - CheckBox checkBoxAmount = new CheckBox(); - hboxColumnAmount.getChildren().add(checkBoxAmount); - - Label labelColumnAmount = new Label(Localization.getString(Strings.REPORT_AMOUNT)); - hboxColumnAmount.getChildren().add(labelColumnAmount); - - checkBoxAmount.selectedProperty().addListener((a, b, c)->{ - toggleColumn(columnAmount, c); - }); - checkBoxAmount.setSelected(activated); - columnAmount.setGraphic(hboxColumnAmount); - tableView.getColumns().add(columnAmount); - } - - private void initTable() - { - columnFilter = new ColumnFilter(); - for(ColumnType type : ColumnType.values()) - { - columnFilter.addColumn(type); - } - - Label labelPlaceholder = new Label(Localization.getString(Strings.PAYMENTS_PLACEHOLDER)); - labelPlaceholder.setStyle("-fx-font-size: 16"); - tableView.setPlaceholder(labelPlaceholder); - - tableView.setFixedCellSize(26); - } - - public void filter() - { - new FilterController(controller.getStage(), controller, controller.getFilterSettings()); - } - - private ArrayList<ReportItem> createReportItems(ArrayList<Payment> payments) - { - ArrayList<ReportItem> reportItems = new ArrayList<>(); - TagHandler tagHander = new TagHandler(controller.getSettings()); - - for(int i = 0; i < payments.size(); i++) - { - Payment currentPayment = payments.get(i); - ReportItem reportItem = new ReportItem(); - reportItem.setPosition(i + 1); - reportItem.setDate(currentPayment.getDate()); - reportItem.setAmount(currentPayment.getAmount()); - reportItem.setName(currentPayment.getName()); - reportItem.setDescription(currentPayment.getDescription()); - reportItem.setRepeating(currentPayment instanceof RepeatingPaymentEntry); - reportItem.setCategory(controller.getCategoryHandler().getCategory(currentPayment.getCategoryID())); - - try - { - reportItem.setTags(tagHander.getTagsAsString(currentPayment)); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - } - - reportItems.add(reportItem); - } - - return reportItems; - } - - private void refreshTableView() - { - Platform.runLater(()->{tableView.getItems().clear();}); - - ArrayList<Payment> payments = controller.getPaymentHandler().getPayments(); - if(payments != null) - { - ArrayList<ReportItem> reportItems = createReportItems(payments); - Platform.runLater(()->{; - ObservableList<ReportItem> objectsForTable = FXCollections.observableArrayList(reportItems); - tableView.setItems(objectsForTable); - }); - } - } - - private ReportPreferences getReportPreferences() - { - ColumnOrder columnOrder = new ColumnOrder(); - for(TableColumn<ReportItem, ?> currentColumn : tableView.getColumns()) - { - ColumnType currentType = (ColumnType)currentColumn.getUserData(); - if(columnFilter.containsColumn(currentType)) - { - columnOrder.addColumn(currentType); - } - } - - ReportSorting reportSorting = new ReportSorting(); - ObservableList<TableColumn<ReportItem, ?>> sortOrder = tableView.getSortOrder(); - if(sortOrder.size() > 0) - { - reportSorting.setColumnType((ColumnType)sortOrder.get(0).getUserData()); - reportSorting.setSortType(sortOrder.get(0).getSortType()); - } - else - { - reportSorting.setColumnType(ColumnType.DATE); - reportSorting.setSortType(SortType.DESCENDING); - } - - String reportFolderPath = null; - if(reportPreferences != null) - { - reportFolderPath = reportPreferences.getReportFolderPath(); - } - - return new ReportPreferences(columnOrder, - checkBoxIncludeBudget.isSelected(), - checkBoxSplitTable.isSelected(), - checkBoxIncludeCategoryBudgets.isSelected(), - reportSorting, - reportFolderPath); - } - - private void saveReportPreferences() - { - try - { - ObjectJSONHandler.saveObjectToJSON(Localization.getString(Strings.FOLDER), "reportPreferences", reportPreferences); - } - catch(IOException e) - { - Logger.error(e); - } - } - - public void generate() - { - FileChooser fileChooser = new FileChooser(); - fileChooser.setTitle(Localization.getString(Strings.TITLE_REPORT_SAVE)); - FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("PDF (*.pdf)", "*.pdf"); - fileChooser.setInitialFileName(initialReportFileName); - fileChooser.getExtensionFilters().add(extFilter); - - String initialReportFolder = reportPreferences.getReportFolderPath(); - if(initialReportFolder != null) - { - fileChooser.setInitialDirectory(new File(initialReportFolder)); - } - - File file = fileChooser.showSaveDialog(controller.getStage()); - if(file != null) - { - Budget budget = new Budget(controller.getPaymentHandler().getPayments()); - - reportPreferences = getReportPreferences(); - reportPreferences.setReportFolderPath(file.getParentFile().getAbsolutePath()); - saveReportPreferences(); - - ReportGenerator reportGenerator = new ReportGenerator(new ArrayList<ReportItem>(tableView.getItems()), - controller.getCategoryBudgets(), - reportPreferences, - file, - controller.getSettings().getCurrency(), - controller.getCurrentDate(), - budget); - - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_REPORT), controller.getStage(), controller.getIcon()); - - Worker.runLater(() -> { - try - { - reportGenerator.generate(); - - Platform.runLater(() -> { - LoadingModal.closeModal(); - - controller.showNotification(Localization.getString(Strings.NOTIFICATION_REPORT_SAVE)); - - Alert alert = new Alert(AlertType.INFORMATION); - alert.setTitle(Localization.getString(Strings.INFO_TITLE_REPORT_SAVE)); - alert.setHeaderText(""); - alert.initOwner(controller.getStage()); - alert.setContentText(Localization.getString(Strings.INFO_TEXT_REPORT_SAVE)); - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(controller.getIcon()); - - ButtonType buttonTypeOne = new ButtonType(Localization.getString(Strings.INFO_TEXT_REPORT_SAVE_OPEN_FOLDER)); - ButtonType buttonTypeTwo = new ButtonType(Localization.getString(Strings.INFO_TEXT_REPORT_SAVE_OPEN_REPORT)); - ButtonType buttonTypeThree = new ButtonType(Localization.getString(Strings.OK)); - alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeTwo, buttonTypeThree); - - DialogPane dialogPane = alert.getDialogPane(); - dialogPane.getButtonTypes().stream().map(dialogPane::lookupButton).forEach(button -> button.addEventHandler(KeyEvent.KEY_PRESSED, (event) -> { - if(KeyCode.ENTER.equals(event.getCode()) && event.getTarget() instanceof Button) - { - ((Button)event.getTarget()).fire(); - } - })); - - Optional<ButtonType> result = alert.showAndWait(); - if (result.get() == buttonTypeOne) - { - try - { - Desktop.getDesktop().open(new File(file.getParent().replace("\\", "/"))); - } - catch(IOException e1) - { - Logger.error(e1); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_OPEN_FOLDER, e1.getMessage()), - controller.getIcon(), - controller.getStage(), - null, - false); - } - } - else if (result.get() == buttonTypeTwo) - { - try - { - Desktop.getDesktop().open(new File(file.getAbsolutePath().replace("\\", "/"))); - } - catch(IOException e1) - { - Logger.error(e1); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_OPEN_REPORT, e1.getMessage()), - controller.getIcon(), - controller.getStage(), - null, - false); - } - } - else - { - alert.close(); - } - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(() -> { - LoadingModal.closeModal(); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_REPORT_SAVE, e.getMessage()), - controller.getIcon(), - controller.getStage(), - null, - false); - }); - } - }); - } - } - - public Controller getController() - { - return controller; - } - - @Override - public void refresh() - { - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_REPORT_TAB), controller.getStage(), controller.getIcon()); - - if(controller.getFilterSettings().equals(new FilterSettings())) - { - labelFilterActive.setVisible(false); - } - else - { - labelFilterActive.setVisible(true); - } - - DateTime currentDate = controller.getCurrentDate(); - String currentMonth = currentDate.toString("MM"); - String currentYear = currentDate.toString("YYYY"); - - initialReportFileName = Localization.getString(Strings.REPORT_INITIAL_FILENAME, currentYear, currentMonth); - - reportPreferences = getReportPreferences(); - saveReportPreferences(); - - Worker.runLater(() -> { - refreshTableView(); - - Platform.runLater(() -> { - LoadingModal.closeModal(); - applyReportPreferences(); - tableView.refresh(); - }); - }); - } - - @Override - public void applyStyle() - { - buttonFilter.setGraphic(new FontIcon(FontIconType.FILTER, 18, Color.WHITE)); - buttonGenerate.setGraphic(new FontIcon(FontIconType.COGS, 18, Color.WHITE)); - labelFilterActive.setGraphic(new FontIcon(FontIconType.WARNING, 16, Colors.TEXT)); - - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - labelFilterActive.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - buttonFilter.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - buttonGenerate.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - checkBoxIncludeBudget.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT) + "; -fx-font-size: 14;"); - checkBoxSplitTable.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT) + "; -fx-font-size: 14;"); - checkBoxIncludeCategoryBudgets.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT) + "; -fx-font-size: 14;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SearchController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SearchController.java deleted file mode 100644 index 930d015ae..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SearchController.java +++ /dev/null @@ -1,327 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.util.ArrayList; - -import org.controlsfx.control.RangeSlider; - -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.search.SearchPreferences; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.cells.SearchCell; -import de.deadlocker8.budgetmasterclient.utils.LoadingModal; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.application.Platform; -import javafx.beans.value.ChangeListener; -import javafx.fxml.FXML; -import javafx.geometry.Pos; -import javafx.scene.control.Button; -import javafx.scene.control.CheckBox; -import javafx.scene.control.Label; -import javafx.scene.control.ListCell; -import javafx.scene.control.ListView; -import javafx.scene.control.TextField; -import javafx.scene.control.TextFormatter; -import javafx.scene.input.KeyCode; -import javafx.scene.input.MouseEvent; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.paint.Color; -import javafx.stage.Modality; -import javafx.stage.Stage; -import javafx.util.Callback; -import logger.Logger; -import tools.ConvertTo; -import tools.Localization; -import tools.Worker; - -public class SearchController extends BaseController implements Styleable -{ - @FXML private CheckBox checkBoxName; - @FXML private CheckBox checkBoxDescription; - @FXML private CheckBox checkBoxCategoryName; - @FXML private CheckBox checkBoxTags; - @FXML private TextField textFieldSearch; - @FXML private CheckBox checkBoxSearchByAmount; - @FXML private TextField textFieldAmountMin; - @FXML private TextField textFieldAmountMax; - @FXML private HBox hboxRangeSlider; - @FXML private Label labelSeparator; - @FXML private HBox hboxSearchByAmount; - @FXML private Button buttonCancel; - @FXML private Button buttonSearch; - @FXML private ListView<Payment> listView; - - private Stage parentStage; - private Controller controller; - private RangeSlider rangeSlider; - - public SearchController(Stage parentStage, Controller controller) - { - this.parentStage = parentStage; - this.controller = controller; - load("/de/deadlocker8/budgetmaster/ui/fxml/SearchGUI.fxml", Localization.getBundle()); - getStage().showAndWait(); - } - - @Override - public void initStage(Stage stage) - { - stage.initOwner(parentStage); - stage.initModality(Modality.APPLICATION_MODAL); - stage.setTitle(Localization.getString(Strings.TITLE_SEARCH)); - stage.getIcons().add(controller.getIcon()); - stage.setResizable(true); - stage.setMinWidth(500); - stage.setMinHeight(500); - stage.setWidth(650); - } - - @Override - public void init() - { - SearchController thisController = this; - listView.setCellFactory(new Callback<ListView<Payment>, ListCell<Payment>>() - { - @Override - public ListCell<Payment> call(ListView<Payment> param) - { - SearchCell cell = new SearchCell(thisController); - cell.addEventFilter(MouseEvent.MOUSE_CLICKED, event -> { - if(event.getClickCount() == 2) - { - // don't allow editing of payment "rest" - if(cell.getItem().getCategoryID() != 2) - { - controller.getPaymentController().payment(!cell.getItem().isIncome(), true, cell.getItem()); - search(); - } - } - }); - cell.prefWidthProperty().bind(listView.widthProperty().subtract(4)); - return cell; - } - }); - - Label labelPlaceholder = new Label(Localization.getString(Strings.PAYMENTS_PLACEHOLDER)); - labelPlaceholder.setStyle("-fx-font-size: 16"); - listView.setPlaceholder(labelPlaceholder); - - listView.getSelectionModel().selectedIndexProperty().addListener((ChangeListener<Number>)(observable, oldValue, newValue) -> Platform.runLater(() -> listView.getSelectionModel().select(-1))); - - checkBoxName.setSelected(true); - - textFieldSearch.setOnKeyPressed((event)->{ - if(event.getCode().equals(KeyCode.ENTER)) - { - search(); - } - }); - - checkBoxSearchByAmount.selectedProperty().addListener((a, b, c)->{ - hboxSearchByAmount.setDisable(!c); - }); - - hboxSearchByAmount.setDisable(true); - - int maximum; - try - { - maximum = getMaxAmountFromServer(); - } - catch(Exception e) - { - Logger.error(e); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - return; - } - - rangeSlider = new RangeSlider(); - rangeSlider.setMin(0); - rangeSlider.setMax(maximum); - rangeSlider.setLowValue(rangeSlider.getMin()); - rangeSlider.setHighValue(rangeSlider.getMax()); - rangeSlider.setShowTickMarks(true); - rangeSlider.setShowTickLabels(true); - rangeSlider.setMajorTickUnit(getMayorTickUnit(maximum)); - rangeSlider.setMinorTickCount(0); - rangeSlider.lowValueProperty().addListener((a, b, c)->{ - textFieldAmountMin.setText(String.valueOf(c.intValue())); - }); - rangeSlider.highValueProperty().addListener((a, b, c)->{ - textFieldAmountMax.setText(String.valueOf(c.intValue())); - }); - hboxRangeSlider.getChildren().add(rangeSlider); - hboxRangeSlider.setAlignment(Pos.CENTER); - HBox.setHgrow(rangeSlider, Priority.ALWAYS); - - textFieldAmountMin.setTextFormatter(new TextFormatter<>(c -> { - if(c.getControlNewText().isEmpty() || c.getControlNewText().matches("[0-9]*")) - { - return c; - } - else - { - return null; - } - })); - - textFieldAmountMax.setTextFormatter(new TextFormatter<>(c -> { - if(c.getControlNewText().isEmpty() || c.getControlNewText().matches("[0-9]*")) - { - return c; - } - else - { - return null; - } - })); - - textFieldAmountMin.textProperty().addListener((a, b, c)->{ - setRangeSliderAmountMin(); - }); - - textFieldAmountMax.textProperty().addListener((a, b, c)->{ - setRangeSliderAmountMax(); - }); - - textFieldAmountMin.setText("0"); - textFieldAmountMax.setText(String.valueOf(maximum)); - - //prefill - SearchPreferences searchPreferences = controller.getSearchPreferences(); - if(controller.getSearchPreferences() != null) - { - textFieldSearch.setText(searchPreferences.getLastQuery()); - checkBoxName.setSelected(searchPreferences.isSearchName()); - checkBoxDescription.setSelected(searchPreferences.isSearchDescription()); - checkBoxCategoryName.setSelected(searchPreferences.isSearchCategorNames()); - checkBoxTags.setSelected(searchPreferences.isSearchTags()); - checkBoxSearchByAmount.setSelected(searchPreferences.isSearchAmount()); - rangeSlider.setLowValue(searchPreferences.getMinAmount()); - rangeSlider.setHighValue(searchPreferences.getMaxAmount()); - } - - applyStyle(); - } - - private void setRangeSliderAmountMin() - { - String text = textFieldAmountMin.getText(); - if(text != null && !text.equals("")) - { - rangeSlider.setLowValue(Integer.parseInt(text)); - } - } - - private void setRangeSliderAmountMax() - { - String text = textFieldAmountMax.getText(); - if(text != null && !text.equals("")) - { - rangeSlider.setHighValue(Integer.parseInt(text)); - } - } - - private int getMaxAmountFromServer() throws Exception - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - return connection.getMaxAmount(); - } - - private int getMayorTickUnit(int maximum) - { - if(maximum < 10) - return 1; - - if(maximum < 100) - return 5; - - int length = String.valueOf(maximum).length(); - return (int)Math.pow(10, length-2); - } - - public void search() - { - String query = textFieldSearch.getText().trim(); - if(controller.getSearchPreferences() == null) - { - controller.setSearchPreferences(new SearchPreferences()); - } - SearchPreferences searchPreferences = controller.getSearchPreferences(); - searchPreferences.setLastQuery(query); - searchPreferences.setSearchName(checkBoxName.isSelected()); - searchPreferences.setSearchDescription(checkBoxDescription.isSelected()); - searchPreferences.setSearchCategorNames(checkBoxCategoryName.isSelected()); - searchPreferences.setSearchTags(checkBoxTags.isSelected()); - searchPreferences.setSearchAmount(checkBoxSearchByAmount.isSelected()); - searchPreferences.setMinAmount((int)rangeSlider.getLowValue()); - searchPreferences.setMaxAmount((int)rangeSlider.getHighValue()); - - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_SEARCH), getStage(), controller.getIcon()); - - Worker.runLater(() -> { - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - ArrayList<Payment> payments = connection.getPaymentsForSearch(query, - checkBoxName.isSelected(), - checkBoxDescription.isSelected(), - checkBoxCategoryName.isSelected(), - checkBoxTags.isSelected(), - checkBoxSearchByAmount.isSelected(), - (int)rangeSlider.getLowValue()*100, - (int)rangeSlider.getHighValue()*100); - - Platform.runLater(() -> { - listView.getItems().clear(); - if(payments != null) - { - listView.getItems().setAll(payments); - } - - LoadingModal.closeModal(); - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(() -> { - LoadingModal.closeModal(); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - }); - } - }); - - textFieldSearch.requestFocus(); - textFieldSearch.positionCaret(textFieldSearch.getText().length()); - } - - public void cancel() - { - getStage().close(); - } - - public Controller getController() - { - return controller; - } - - @Override - public void applyStyle() - { - labelSeparator.setStyle("-fx-background-color: #CCCCCC;"); - labelSeparator.setMinHeight(1); - labelSeparator.setMaxHeight(1); - - buttonCancel.setGraphic(new FontIcon(FontIconType.TIMES, 17, Color.WHITE)); - buttonSearch.setGraphic(new FontIcon(FontIconType.SEARCH, 17, Color.WHITE)); - - buttonCancel.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - buttonSearch.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 15;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SplashScreenController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SplashScreenController.java deleted file mode 100644 index 2bc64ec98..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/SplashScreenController.java +++ /dev/null @@ -1,199 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller; - -import java.io.IOException; - -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.FileHelper; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.ShutdownHandler; -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.customAlert.CustomAlertController; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.application.Platform; -import javafx.fxml.FXML; -import javafx.geometry.Insets; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.Label; -import javafx.scene.control.PasswordField; -import javafx.scene.image.Image; -import javafx.scene.image.ImageView; -import javafx.scene.input.KeyCode; -import javafx.scene.paint.Color; -import javafx.stage.Stage; -import logger.Logger; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.HashUtils; -import tools.Localization; - -public class SplashScreenController extends BaseController implements Styleable -{ - @FXML private ImageView imageViewLogo; - @FXML private Label labelVersion; - @FXML private PasswordField textFieldPassword; - @FXML private Button buttonLogin; - - private Stage parentStage; - private Image icon; - private Settings settings; - private boolean isFirstStart; - private boolean isStartingAfterUpdate; - private ShutdownHandler shutdownHandler; - - public SplashScreenController(Stage parentStage, Image icon, boolean isStartingAfterUpdate, ShutdownHandler shutdownHandler) - { - this.parentStage = parentStage; - this.icon = icon; - this.isStartingAfterUpdate = isStartingAfterUpdate; - this.shutdownHandler = shutdownHandler; - load("/de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml", Localization.getBundle()); - getStage().show(); - } - - @Override - public void initStage(Stage stage) - { - stage.initOwner(parentStage); - stage.setWidth(450); - stage.setHeight(250); - stage.setResizable(false); - stage.getIcons().add(icon); - stage.setTitle(Localization.getString(Strings.APP_NAME)); - } - - @Override - public void init() - { - imageViewLogo.setImage(icon); - - labelVersion.setText("v" + Localization.getString(Strings.VERSION_NAME)); - - applyStyle(); - - textFieldPassword.setOnKeyReleased((event)->{ - if(event.getCode() == KeyCode.ENTER) - { - event.consume(); - login(); - } - }); - - if(isStartingAfterUpdate) - { - Platform.runLater(() -> { - AlertGenerator.showAlert(AlertType.INFORMATION, - Localization.getString(Strings.INFO_TITLE_START_AFTER_UPDATE), - Localization.getString(Strings.INFO_HEADER_TEXT_START_AFTER_UPDATE, Localization.getString(Strings.VERSION_NAME)), - Localization.getString(Strings.INFO_TEXT_START_AFTER_UPDATE), - icon, - getStage(), - null, - false); - }); - } - - settings = FileHelper.loadSettings(); - - if(settings == null) - { - settings = new Settings(); - //first start of budgetmaster - Platform.runLater(() -> { - AlertGenerator.showAlert(AlertType.INFORMATION, - Localization.getString(Strings.INFO_TITLE_WELCOME), - Localization.getString(Strings.INFO_HEADER_TEXT_WELCOME), - Localization.getString(Strings.INFO_TEXT_WELCOME_FIRST_START), - icon, - getStage(), - null, - false); - }); - isFirstStart = true; - } - else - { - if(settings.getClientSecret() == null) - { - //compatibility (settings exists but from older version without clientSecret) - Platform.runLater(() -> { - AlertGenerator.showAlert(AlertType.INFORMATION, - Localization.getString(Strings.INFO_TITLE_WELCOME), - Localization.getString(Strings.INFO_HEADER_TEXT_WELCOME), - Localization.getString(Strings.INFO_TEXT_WELCOME_COMPATIBILITY), - icon, - getStage(), - null, - false); - }); - isFirstStart = true; - } - else - { - isFirstStart = false; - } - } - } - - public void login() - { - String password = textFieldPassword.getText().trim(); - if(password == null || password.isEmpty()) - { - new CustomAlertController(getStage(), this, AlertType.WARNING, Localization.getString(Strings.TITLE_WARNING), Localization.getString(Strings.WARNING_EMPTY_PASSWORD)); - return; - } - - if(isFirstStart) - { - //save to settings - settings.setClientSecret(HashUtils.hash(password, Helpers.SALT)); - try - { - FileHelper.saveSettings(settings); - - getStage().close(); - openBudgetMaster(); - } - catch(IOException e) - { - Logger.error(e); - new CustomAlertController(getStage(), this, AlertType.WARNING, Localization.getString(Strings.TITLE_ERROR), Localization.getString(Strings.ERROR_PASSWORD_SAVE)); - return; - } - } - else - { - //check password - if(!HashUtils.hash(password, Helpers.SALT).equals(settings.getClientSecret())) - { - new CustomAlertController(getStage(), this, AlertType.WARNING, Localization.getString(Strings.TITLE_WARNING), Localization.getString(Strings.WARNING_WRONG_PASSWORD)); - return; - } - - getStage().close(); - openBudgetMaster(); - } - } - - private void openBudgetMaster() - { - new Controller(settings, shutdownHandler); - } - - public Image getIcon() - { - return icon; - } - - @Override - public void applyStyle() - { - buttonLogin.setGraphic(new FontIcon(FontIconType.SIGN_IN, 18, Color.WHITE)); - buttonLogin.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - buttonLogin.setPadding(new Insets(3, 7, 3, 7)); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/LocalServerSettingsController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/LocalServerSettingsController.java deleted file mode 100644 index edba3b99c..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/LocalServerSettingsController.java +++ /dev/null @@ -1,406 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller.settings; - -import java.io.IOException; -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.ServerType; -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.localserver.LocalServerException; -import de.deadlocker8.budgetmaster.logic.localserver.LocalServerHandler; -import de.deadlocker8.budgetmaster.logic.localserver.LocalServerStatus; -import de.deadlocker8.budgetmaster.logic.updater.Updater; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.FileHelper; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.LanguageType; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.RestartHandler; -import de.deadlocker8.budgetmasterclient.ui.cells.LanguageCell; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import de.deadlocker8.budgetmasterclient.utils.LoadingModal; -import javafx.application.Platform; -import javafx.fxml.FXML; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.CheckBox; -import javafx.scene.control.ComboBox; -import javafx.scene.control.Label; -import javafx.scene.control.RadioButton; -import javafx.scene.control.ScrollPane; -import javafx.scene.control.TextField; -import javafx.scene.control.ToggleButton; -import javafx.scene.control.ToggleGroup; -import javafx.scene.layout.AnchorPane; -import javafx.scene.layout.HBox; -import logger.Logger; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.HashUtils; -import tools.Localization; -import tools.Worker; - -public class LocalServerSettingsController extends SettingsController -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private ScrollPane scrollPane; - @FXML private HBox hboxSettings; - @FXML private ToggleButton toggleButtonOnline; - @FXML private ToggleButton toggleButtonLocal; - @FXML private Label labelStatus; - @FXML private Label labelLocalServerStatus; - @FXML private Button buttonLocalServerAction; - @FXML private Label labelClientSecret; - @FXML private TextField textFieldClientSecret; - @FXML private TextField textFieldCurrency; - @FXML private Label labelCurrency; - @FXML private Button buttonSave; - @FXML private Button buttonExportDB; - @FXML private Button buttonImportDB; - @FXML private Button buttonDeleteDB; - @FXML private RadioButton radioButtonRestActivated; - @FXML private RadioButton radioButtonRestDeactivated; - @FXML private ComboBox<LanguageType> comboBoxLanguage; - @FXML private CheckBox checkboxEnableAutoUpdate; - @FXML private Button buttonSearchUpdates; - @FXML private Label labelCurrentVersion; - @FXML private Label labelLatestVersion; - - private LanguageType previousLanguage; - - private final int MILLIS_UNTIL_NEXT_RETRY = 2000; - private final int MAX_NUMBER_OF_RETRIES = 5; - - @Override - public void init(Controller controller) - { - super.controller = controller; - - ToggleGroup toggleGroupServerType = new ToggleGroup(); - toggleButtonOnline.setToggleGroup(toggleGroupServerType); - toggleButtonLocal.setToggleGroup(toggleGroupServerType); - toggleButtonOnline.setOnAction((event) -> { - controller.getSettings().setServerType(ServerType.ONLINE); - controller.loadSettingsTab(); - }); - - textFieldClientSecret.setText("******"); - - comboBoxLanguage.setCellFactory((view) -> { - return new LanguageCell(true); - }); - - comboBoxLanguage.getItems().addAll(LanguageType.values()); - comboBoxLanguage.setButtonCell(new LanguageCell(false)); - comboBoxLanguage.setValue(LanguageType.ENGLISH); - previousLanguage = LanguageType.ENGLISH; - checkboxEnableAutoUpdate.setSelected(true); - - applyStyle(); - - textFieldCurrency.setPromptText(Localization.getString(Strings.CURRENCY_PLACEHOLDER)); - - ToggleGroup toggleGroup = new ToggleGroup(); - radioButtonRestActivated.setToggleGroup(toggleGroup); - radioButtonRestDeactivated.setToggleGroup(toggleGroup); - - hboxSettings.prefWidthProperty().bind(scrollPane.widthProperty().subtract(25)); - - refreshLabelsUpdate(); - prefill(); - checkServerStatus(); - } - - @Override - public void prefill() - { - textFieldCurrency.setText(controller.getSettings().getCurrency()); - - if(controller.getSettings().isRestActivated()) - { - radioButtonRestActivated.setSelected(true); - } - else - { - radioButtonRestDeactivated.setSelected(true); - } - - if(controller.getSettings().getLanguage() != null) - { - LanguageType language = controller.getSettings().getLanguage(); - comboBoxLanguage.setValue(language); - previousLanguage = language; - } - - checkboxEnableAutoUpdate.setSelected(controller.getSettings().isAutoUpdateCheckEnabled()); - } - - private void checkServerStatus() - { - LocalServerHandler serverHandler = new LocalServerHandler(); - switch(serverHandler.getServerStatus()) - { - case ACTIVE: - labelLocalServerStatus.setText(Localization.getString(Strings.LOCAL_SERVER_STATUS_OK)); - buttonLocalServerAction.setVisible(false); - refreshLabelsUpdate(); - save(); - break; - case INACTIVE: - Platform.runLater(()->{ - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_LOCAL_SERVER), controller.getStage(), controller.getIcon()); - }); - labelLocalServerStatus.setText(Localization.getString(Strings.LOCAL_SERVER_STATUS_NOT_STARTED)); - buttonLocalServerAction.setVisible(false); - Worker.runLater(() -> { - try - { - Logger.debug("Starting local Server..."); - serverHandler.createServerSettingsIfNotExists(); - serverHandler.startServer(); - - Logger.debug("Trying to connect to local server..."); - Platform.runLater(()->{LoadingModal.setMessage(Localization.getString(Strings.LOAD_LOCAL_SERVER_CONNECT));}); - int retryCount = 1; - while(retryCount <= MAX_NUMBER_OF_RETRIES) - { - final int retries = retryCount; - boolean isActive = serverHandler.getServerStatus().equals(LocalServerStatus.ACTIVE); - if(isActive) - { - Logger.debug("Connected to local server"); - break; - } - - if(retryCount == MAX_NUMBER_OF_RETRIES) - { - Logger.debug("Couldn't connect to local server. Giving up after " + retryCount + " retries."); - throw new LocalServerException(""); - } - else - { - Logger.debug("Couldn't connect to local server. Retry " + retryCount + "/" + MAX_NUMBER_OF_RETRIES + ". Next Retry in " + MILLIS_UNTIL_NEXT_RETRY/1000 + " Seconds..."); - Platform.runLater(()->{LoadingModal.setMessage(Localization.getString(Strings.LOAD_LOCAL_SERVER_RETRY, retries, MAX_NUMBER_OF_RETRIES));}); - retryCount++; - try - { - Thread.sleep(MILLIS_UNTIL_NEXT_RETRY); - } - catch(InterruptedException e) - { - } - } - } - } - catch(IOException e) - { - Logger.debug("Error while starting local server"); - Logger.error(e); - Platform.runLater(()->{ - LoadingModal.closeModal(); - AlertGenerator.showAlert(AlertType.ERROR, Localization.getString(Strings.TITLE_ERROR), "", Localization.getString(Strings.ERROR_LOCAL_SERVER_START, e.getMessage()), controller.getIcon(), controller.getStage(), null, false); - controller.forceSettingsTab(); - }); - return; - } - catch(LocalServerException ex) - { - Logger.debug("Error while starting local server"); - Platform.runLater(()->{ - LoadingModal.closeModal(); - AlertGenerator.showAlert(AlertType.ERROR, Localization.getString(Strings.TITLE_ERROR), "", Localization.getString(Strings.ERROR_LOCAL_SERVER_START, ""), controller.getIcon(), controller.getStage(), null, false); - controller.refresh(controller.getFilterSettings()); - buttonLocalServerAction.setText(Localization.getString(Strings.LOCAL_SERVER_ACTION_NOT_STARTED)); - buttonLocalServerAction.setVisible(true); - buttonLocalServerAction.setDisable(false); - - buttonLocalServerAction.setOnAction((event) -> { - buttonLocalServerAction.setDisable(true); - checkServerStatus(); - }); - }); - return; - } - - Platform.runLater(()->{ - checkServerStatus(); - LoadingModal.closeModal(); - }); - }); - break; - case MISSING: - controller.forceSettingsTab(); - labelLocalServerStatus.setText(Localization.getString(Strings.LOCAL_SERVER_STATUS_NOT_PRESENT)); - buttonLocalServerAction.setText(Localization.getString(Strings.LOCAL_SERVER_ACTION_NOT_PRESENT)); - buttonLocalServerAction.setVisible(true); - buttonLocalServerAction.setDisable(false); - - buttonLocalServerAction.setOnAction((event) -> { - buttonLocalServerAction.setDisable(true); - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_DOWNLOAD_LOCAL_SERVER), controller.getStage(), controller.getIcon()); - - Worker.runLater(() -> { - try - { - serverHandler.downloadServer(Localization.getString(Strings.VERSION_NAME)); - serverHandler.createServerSettingsIfNotExists(); - Platform.runLater(()->{ - checkServerStatus(); - LoadingModal.closeModal(); - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(()->{ - LoadingModal.closeModal(); - AlertGenerator.showAlert(AlertType.ERROR, Localization.getString(Strings.TITLE_ERROR), "", Localization.getString(Strings.ERROR_LOCAL_SERVER_DOWNLOAD, e.getMessage()), controller.getIcon(), controller.getStage(), null, false); - buttonLocalServerAction.setDisable(false); - }); - } - }); - }); - break; - default: - break; - } - } - - @Override - void refreshLabelsUpdate() - { - Updater updater = controller.getUpdater(); - labelCurrentVersion.setText(Localization.getString(Strings.VERSION_NAME)); - labelLatestVersion.setText(updater.getLatestVersion().getVersionName()); - } - - @Override - public void save() - { - String clientSecret = textFieldClientSecret.getText(); - String currency = textFieldCurrency.getText(); - - if(clientSecret == null || clientSecret.trim().equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, Localization.getString(Strings.TITLE_WARNING), "", Localization.getString(Strings.WARNING_EMPTY_SECRET_CLIENT), controller.getIcon(), controller.getStage(), null, false); - return; - } - clientSecret = clientSecret.trim(); - - if(currency == null || currency.trim().equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, Localization.getString(Strings.TITLE_WARNING), "", Localization.getString(Strings.WARNING_EMPTY_CURRENCY), controller.getIcon(), controller.getStage(), null, false); - return; - } - currency = currency.trim(); - - if(controller.getSettings().isComplete()) - { - if(!clientSecret.equals("******")) - { - controller.getSettings().setClientSecret(HashUtils.hash(clientSecret, Helpers.SALT)); - } - - controller.getSettings().setCurrency(currency); - controller.getSettings().setRestActivated(radioButtonRestActivated.isSelected()); - controller.getSettings().setLanguage(comboBoxLanguage.getValue()); - controller.getSettings().setAutoUpdateCheckEnabled(checkboxEnableAutoUpdate.isSelected()); - } - else - { - Settings settings = new Settings(); - - if(!clientSecret.equals("******")) - { - settings.setClientSecret(HashUtils.hash(clientSecret, Helpers.SALT)); - } - else - { - settings.setClientSecret(controller.getSettings().getClientSecret()); - } - - settings.setCurrency(currency); - settings.setRestActivated(radioButtonRestActivated.isSelected()); - settings.setLanguage(comboBoxLanguage.getValue()); - settings.setAutoUpdateCheckEnabled(checkboxEnableAutoUpdate.isSelected()); - controller.setSettings(settings); - } - - controller.getSettings().setServerType(ServerType.LOCAL); - controller.getSettings().setSecret(HashUtils.hash("BudgetMaster", Helpers.SALT)); - controller.getSettings().setUrl("https://localhost:9000"); - ArrayList<String> trustedHosts = new ArrayList<>(); - trustedHosts.add("localhost"); - controller.getSettings().setTrustedHosts(trustedHosts); - - try - { - FileHelper.saveSettings(controller.getSettings()); - } - catch(IOException e) - { - Logger.error(e); - AlertGenerator.showAlert(AlertType.ERROR, Localization.getString(Strings.TITLE_ERROR), "", Localization.getString(Strings.ERROR_SETTINGS_SAVE), controller.getIcon(), controller.getStage(), null, false); - } - - textFieldClientSecret.setText("******"); - - RestartHandler restartHandler = new RestartHandler(controller); - restartHandler.handleRestart(previousLanguage); - refreshLabelsUpdate(); - } - - public void handleIncompatibleServer() - { - labelLocalServerStatus.setText(Localization.getString(Strings.LOCAL_SERVER_STATUS_INCOMPATIBLE)); - buttonLocalServerAction.setText(Localization.getString(Strings.LOCAL_SERVER_ACTION_INCOMPATIBLE)); - buttonLocalServerAction.setVisible(true); - buttonLocalServerAction.setDisable(false); - - buttonLocalServerAction.setOnAction((event) -> { - buttonLocalServerAction.setDisable(true); - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_DOWNLOAD_LOCAL_SERVER), controller.getStage(), controller.getIcon()); - - Worker.runLater(() -> { - try - { - LocalServerHandler serverHandler = new LocalServerHandler(); - serverHandler.shutdownServer(); - Thread.sleep(3000); - serverHandler.downloadServer(Localization.getString(Strings.VERSION_NAME)); - serverHandler.createServerSettingsIfNotExists(); - Platform.runLater(()->{ - checkServerStatus(); - LoadingModal.closeModal(); - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(()->{ - LoadingModal.closeModal(); - AlertGenerator.showAlert(AlertType.ERROR, Localization.getString(Strings.TITLE_ERROR), "", Localization.getString(Strings.ERROR_LOCAL_SERVER_DOWNLOAD, e.getMessage()), controller.getIcon(), controller.getStage(), null, false); - buttonLocalServerAction.setDisable(false); - }); - } - }); - }); - } - - @Override - public void applyStyle() - { - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - scrollPane.setStyle("-fx-background-color: transparent"); - labelClientSecret.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelStatus.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelCurrency.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - toggleButtonOnline.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14; -fx-background-radius: 3 0 0 3"); - toggleButtonLocal.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_DARK_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14; -fx-background-radius: 0 3 3 0; -fx-effect: innershadow(gaussian, rgba(0,0,0,0.7), 10,0,0,0);"); - buttonSave.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - buttonLocalServerAction.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonExportDB.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonImportDB.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonDeleteDB.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_RED) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonSearchUpdates.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/OnlineServerSettingsController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/OnlineServerSettingsController.java deleted file mode 100644 index 44665753d..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/OnlineServerSettingsController.java +++ /dev/null @@ -1,338 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller.settings; - -import java.io.IOException; -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.ServerType; -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.updater.Updater; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.FileHelper; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.LanguageType; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.RestartHandler; -import de.deadlocker8.budgetmasterclient.ui.cells.LanguageCell; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import javafx.fxml.FXML; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.CheckBox; -import javafx.scene.control.ComboBox; -import javafx.scene.control.Label; -import javafx.scene.control.RadioButton; -import javafx.scene.control.ScrollPane; -import javafx.scene.control.TextArea; -import javafx.scene.control.TextField; -import javafx.scene.control.ToggleButton; -import javafx.scene.control.ToggleGroup; -import javafx.scene.layout.AnchorPane; -import javafx.scene.layout.HBox; -import logger.Logger; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.HashUtils; -import tools.Localization; - -public class OnlineServerSettingsController extends SettingsController -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private ScrollPane scrollPane; - @FXML private HBox hboxSettings; - @FXML private ToggleButton toggleButtonOnline; - @FXML private ToggleButton toggleButtonLocal; - @FXML private Label labelClientSecret; - @FXML private TextField textFieldClientSecret; - @FXML private TextField textFieldURL; - @FXML private Label labelURL; - @FXML private TextField textFieldSecret; - @FXML private Label labelSecret; - @FXML private TextField textFieldCurrency; - @FXML private Label labelCurrency; - @FXML private Button buttonSave; - @FXML private Button buttonExportDB; - @FXML private Button buttonImportDB; - @FXML private Button buttonDeleteDB; - @FXML private RadioButton radioButtonRestActivated; - @FXML private RadioButton radioButtonRestDeactivated; - @FXML private TextArea textAreaTrustedHosts; - @FXML private ComboBox<LanguageType> comboBoxLanguage; - @FXML private CheckBox checkboxEnableAutoUpdate; - @FXML private Button buttonSearchUpdates; - @FXML private Label labelCurrentVersion; - @FXML private Label labelLatestVersion; - - private LanguageType previousLanguage; - - @Override - public void init(Controller controller) - { - super.controller = controller; - - ToggleGroup toggleGroupServerType = new ToggleGroup(); - toggleButtonOnline.setToggleGroup(toggleGroupServerType); - toggleButtonLocal.setToggleGroup(toggleGroupServerType); - toggleButtonLocal.setOnAction((event)->{ - controller.getSettings().setServerType(ServerType.LOCAL); - controller.loadSettingsTab(); - }); - - textFieldClientSecret.setText("******"); - - comboBoxLanguage.setCellFactory((view) -> { - return new LanguageCell(true); - }); - - comboBoxLanguage.getItems().addAll(LanguageType.values()); - comboBoxLanguage.setButtonCell(new LanguageCell(false)); - comboBoxLanguage.setValue(LanguageType.ENGLISH); - previousLanguage = LanguageType.ENGLISH; - checkboxEnableAutoUpdate.setSelected(true); - - prefill(); - - applyStyle(); - - textFieldURL.setPromptText(Localization.getString(Strings.URL_PLACEHOLDER)); - textFieldCurrency.setPromptText(Localization.getString(Strings.CURRENCY_PLACEHOLDER)); - textAreaTrustedHosts.setPromptText(Localization.getString(Strings.TRUSTED_HOSTS_PLACEHOLDER)); - - ToggleGroup toggleGroup = new ToggleGroup(); - radioButtonRestActivated.setToggleGroup(toggleGroup); - radioButtonRestDeactivated.setToggleGroup(toggleGroup); - - hboxSettings.prefWidthProperty().bind(scrollPane.widthProperty().subtract(25)); - - refreshLabelsUpdate(); - - if(controller.checkSettings()) - { - controller.refresh(controller.getFilterSettings()); - } - } - - @Override - public void prefill() - { - if(controller.getSettings().isComplete()) - { - textFieldURL.setText(controller.getSettings().getUrl()); - textFieldSecret.setText("******"); - textFieldCurrency.setText(controller.getSettings().getCurrency()); - } - - if(controller.getSettings().isRestActivated()) - { - radioButtonRestActivated.setSelected(true); - } - else - { - radioButtonRestDeactivated.setSelected(true); - } - setTextAreaTrustedHosts(controller.getSettings().getTrustedHosts()); - if(controller.getSettings().getLanguage() != null) - { - LanguageType language = controller.getSettings().getLanguage(); - comboBoxLanguage.setValue(language); - previousLanguage = language; - } - - checkboxEnableAutoUpdate.setSelected(controller.getSettings().isAutoUpdateCheckEnabled()); - } - - @Override - void refreshLabelsUpdate() - { - Updater updater = controller.getUpdater(); - labelCurrentVersion.setText(Localization.getString(Strings.VERSION_NAME)); - labelLatestVersion.setText(updater.getLatestVersion().getVersionName()); - } - - private void setTextAreaTrustedHosts(ArrayList<String> trustedHosts) - { - StringBuilder trustedHostsString = new StringBuilder(); - if(trustedHosts != null) - { - for(String currentHost : trustedHosts) - { - trustedHostsString.append(currentHost); - trustedHostsString.append("\n"); - } - textAreaTrustedHosts.setText(trustedHostsString.toString()); - } - else - { - textAreaTrustedHosts.setText(""); - } - } - - @Override - public void save() - { - String clientSecret = textFieldClientSecret.getText(); - String url = textFieldURL.getText(); - String secret = textFieldSecret.getText(); - String currency = textFieldCurrency.getText(); - - if(clientSecret == null || clientSecret.trim().equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_SECRET_CLIENT), - controller.getIcon(), - controller.getStage(), - null, - false); - return; - } - clientSecret = clientSecret.trim(); - - if(url == null || url.trim().equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_URL), - controller.getIcon(), - controller.getStage(), - null, - false); - return; - } - url = url.trim(); - - if(secret == null || secret.trim().equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_SECRET_SERVER), - controller.getIcon(), - controller.getStage(), - null, - false); - return; - } - secret = secret.trim(); - - if(currency == null || currency.trim().equals("")) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_EMPTY_CURRENCY), - controller.getIcon(), - controller.getStage(), - null, - false); - return; - } - currency = currency.trim(); - - ArrayList<String> trustedHosts = new ArrayList<>(); - String trustedHostText = textAreaTrustedHosts.getText(); - String[] trustedHostsArray = trustedHostText.split("\n"); - for(String currentHost : trustedHostsArray) - { - currentHost = currentHost.trim(); - if(!currentHost.equals("")) - { - trustedHosts.add(currentHost); - } - } - setTextAreaTrustedHosts(trustedHosts); - - if(controller.getSettings().isComplete()) - { - if(!clientSecret.equals("******")) - { - controller.getSettings().setClientSecret(HashUtils.hash(clientSecret, Helpers.SALT)); - } - - if(!secret.equals("******")) - { - controller.getSettings().setSecret(HashUtils.hash(secret, Helpers.SALT)); - } - controller.getSettings().setUrl(url); - controller.getSettings().setCurrency(currency); - controller.getSettings().setRestActivated(radioButtonRestActivated.isSelected()); - controller.getSettings().setTrustedHosts(trustedHosts); - controller.getSettings().setLanguage(comboBoxLanguage.getValue()); - controller.getSettings().setAutoUpdateCheckEnabled(checkboxEnableAutoUpdate.isSelected()); - controller.getSettings().setServerType(ServerType.ONLINE); - } - else - { - Settings settings = new Settings(); - - if(!clientSecret.equals("******")) - { - settings.setClientSecret(HashUtils.hash(clientSecret, Helpers.SALT)); - } - else - { - settings.setClientSecret(controller.getSettings().getClientSecret()); - } - - if(!secret.equals("******")) - { - settings.setSecret(HashUtils.hash(secret, Helpers.SALT)); - } - else - { - settings.setSecret(controller.getSettings().getSecret()); - } - settings.setUrl(url); - settings.setCurrency(currency); - settings.setRestActivated(radioButtonRestActivated.isSelected()); - settings.setTrustedHosts(trustedHosts); - settings.setLanguage(comboBoxLanguage.getValue()); - settings.setAutoUpdateCheckEnabled(checkboxEnableAutoUpdate.isSelected()); - settings.setServerType(ServerType.ONLINE); - controller.setSettings(settings); - } - - try - { - FileHelper.saveSettings(controller.getSettings()); - } - catch(IOException e) - { - Logger.error(e); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_SETTINGS_SAVE), - controller.getIcon(), - controller.getStage(), - null, - false); - } - - textFieldClientSecret.setText("******"); - textFieldSecret.setText("******"); - - RestartHandler restartHandler = new RestartHandler(controller); - restartHandler.handleRestart(previousLanguage); - refreshLabelsUpdate(); - } - - @Override - public void applyStyle() - { - anchorPaneMain.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND)); - scrollPane.setStyle("-fx-background-color: transparent"); - toggleButtonOnline.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_DARK_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14; -fx-background-radius: 3 0 0 3; -fx-effect: innershadow(gaussian, rgba(0,0,0,0.7), 10,0,0,0);"); - toggleButtonLocal.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14; -fx-background-radius: 0 3 3 0"); - labelClientSecret.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelSecret.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelURL.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - labelCurrency.setStyle("-fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - buttonSave.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 16;"); - buttonExportDB.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonImportDB.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonDeleteDB.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_RED) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - buttonSearchUpdates.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_BUTTON_BLUE) + "; -fx-text-fill: white; -fx-font-weight: bold; -fx-font-size: 14;"); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/SettingsController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/SettingsController.java deleted file mode 100644 index 43dd3187e..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/controller/settings/SettingsController.java +++ /dev/null @@ -1,44 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.controller.settings; - -import de.deadlocker8.budgetmasterclient.ui.Styleable; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import de.deadlocker8.budgetmasterclient.utils.DatabaseDeleter; -import de.deadlocker8.budgetmasterclient.utils.DatabaseExporter; -import de.deadlocker8.budgetmasterclient.utils.DatabaseImporter; - -public abstract class SettingsController implements Styleable -{ - Controller controller; - - public abstract void init(Controller controller); - - public abstract void prefill(); - - abstract void refreshLabelsUpdate(); - - public abstract void save(); - - public void exportDB() - { - DatabaseExporter exporter = new DatabaseExporter(controller); - exporter.exportDatabase(); - } - - public void importDB() - { - DatabaseImporter importer = new DatabaseImporter(controller); - importer.importDatabase(); - } - - public void deleteDB() - { - DatabaseDeleter deleter = new DatabaseDeleter(controller); - deleter.deleteDatabase(false); - } - - public void checkForUpdates() - { - controller.checkForUpdates(true); - refreshLabelsUpdate(); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/customAlert/CustomAlertController.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/customAlert/CustomAlertController.java deleted file mode 100644 index 79e903d39..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/customAlert/CustomAlertController.java +++ /dev/null @@ -1,87 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.customAlert; - -import de.deadlocker8.budgetmasterclient.ui.controller.BaseController; -import de.deadlocker8.budgetmasterclient.ui.controller.SplashScreenController; -import javafx.fxml.FXML; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Label; -import javafx.scene.image.Image; -import javafx.scene.image.ImageView; -import javafx.scene.input.KeyCode; -import javafx.scene.layout.AnchorPane; -import javafx.stage.Modality; -import javafx.stage.Stage; -import tools.Localization; - -public class CustomAlertController extends BaseController -{ - @FXML private AnchorPane anchorPaneMain; - @FXML private ImageView imageView; - @FXML private Label labelMessage; - - private Stage parentStage; - private SplashScreenController controller; - private AlertType alertType; - private String title; - private String message; - - public CustomAlertController(Stage parentStage, SplashScreenController controller, AlertType alertType, String title, String message) - { - this.parentStage = parentStage; - this.controller = controller; - this.alertType = alertType; - this.title = title; - this.message = message; - load("/de/deadlocker8/budgetmaster/ui/customAlert/CustomAlert.fxml", Localization.getBundle()); - getStage().showAndWait(); - } - - @Override - public void initStage(Stage stage) - { - stage.initOwner(parentStage); - stage.initModality(Modality.APPLICATION_MODAL); - stage.setTitle(title); - stage.getIcons().add(controller.getIcon()); - stage.setResizable(false); - } - - @Override - public void init() - { - labelMessage.setText(message); - - getStage().getScene().setOnKeyReleased((event)->{ - event.consume(); - if(event.getCode().equals(KeyCode.ENTER)) - { - confirm(); - } - }); - - switch(alertType) - { - case CONFIRMATION: - imageView.setImage(new Image("/com/sun/javafx/scene/control/skin/modena/dialog-confirmation.png")); - break; - case ERROR: - imageView.setImage(new Image("/com/sun/javafx/scene/control/skin/modena/dialog-error.png")); - break; - case INFORMATION: - imageView.setImage(new Image("/com/sun/javafx/scene/control/skin/modena/dialog-information.png")); - break; - case WARNING: - imageView.setImage(new Image("/com/sun/javafx/scene/control/skin/modena/dialog-warning.png")); - break; - default: - imageView.setImage(new Image("/com/sun/javafx/scene/control/skin/modena/dialog-information.png")); - break; - } - } - - @FXML - public void confirm() - { - getStage().close(); - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/tagField/TagField.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/tagField/TagField.java deleted file mode 100644 index 82b3728e3..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/ui/tagField/TagField.java +++ /dev/null @@ -1,228 +0,0 @@ -package de.deadlocker8.budgetmasterclient.ui.tagField; - -import java.util.ArrayList; -import java.util.Collection; - -import org.controlsfx.control.textfield.AutoCompletionBinding; -import org.controlsfx.control.textfield.TextFields; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.controller.NewPaymentController; -import fontAwesome.FontIcon; -import fontAwesome.FontIconType; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.Label; -import javafx.scene.control.ScrollPane; -import javafx.scene.control.ScrollPane.ScrollBarPolicy; -import javafx.scene.control.TextField; -import javafx.scene.input.KeyCode; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.VBox; -import javafx.util.Callback; -import tools.AlertGenerator; -import tools.ConvertTo; -import tools.Localization; - -public class TagField extends VBox -{ - private ArrayList<Tag> tags; - private ArrayList<Tag> allTags; - private HBox hboxTags; - private TextField textField; - private NewPaymentController parentController; - - public TagField(ArrayList<Tag> tags, ArrayList<Tag> allAvailableTags, NewPaymentController parentController) - { - this.tags = tags; - this.allTags = allAvailableTags; - this.parentController = parentController; - - this.hboxTags = initHboxTags(); - ScrollPane scrollPane = new ScrollPane(); - scrollPane.setContent(hboxTags); - scrollPane.setVbarPolicy(ScrollBarPolicy.NEVER); - scrollPane.setMinHeight(50); - scrollPane.setStyle("-fx-background-color: #FFFFFF; -fx-background-radius: 5px; -fx-border-color: #000000; -fx-border-width: 1 1 0 1; -fx-border-radius: 5px 5px 0 0"); - - this.getChildren().add(scrollPane); - VBox.setVgrow(scrollPane, Priority.ALWAYS); - - textField = new TextField(); - textField.setStyle("-fx-background-color: #FFFFFF; -fx-border-color: #000000; -fx-border-width: 1; -fx-background-radius: 5px; -fx-border-radius: 0 0 5px 5px"); - textField.setPromptText(Localization.getString(Strings.TAGFIELD_PLACEHOLDER)); - textField.setMaxWidth(Double.MAX_VALUE); - textField.setOnKeyPressed((event)->{ - if(event.getCode().equals(KeyCode.ENTER)) - { - addTag(textField.getText().trim()); - } - else if(event.getCode().equals(KeyCode.DOWN)) - { - textField.setText(" "); - textField.setText(""); - } - }); - - textField.setOnMousePressed((event)->{ - textField.setText(" "); - textField.setText(""); - }); - - TextFields.bindAutoCompletion(textField, new Callback<AutoCompletionBinding.ISuggestionRequest, Collection<String>>() - { - @Override - public Collection<String> call(org.controlsfx.control.textfield.AutoCompletionBinding.ISuggestionRequest param) - { - ArrayList<String> completions = getCompletions(allTags); - ArrayList<String> remainingCompletions = new ArrayList<>(); - for(String currentCompletion : completions) - { - if(currentCompletion.toLowerCase().contains(param.getUserText().toLowerCase())) - { - remainingCompletions.add(currentCompletion); - } - } - - return remainingCompletions; - } - }); - this.getChildren().add(textField); - - this.setStyle("-fx-background-color: #FFFFFF; -fx-background-radius: 5px;"); - - refresh(false); - } - - private HBox initHboxTags() - { - HBox newHboxTags = new HBox(); - newHboxTags.setSpacing(5); - newHboxTags.setPadding(new Insets(5)); - newHboxTags.setStyle("-fx-background-color: transparent"); - return newHboxTags; - } - - private ArrayList<String> getCompletions(ArrayList<Tag> allTags) - { - ArrayList<String> newCompletions = new ArrayList<>(); - for(Tag currentTag : allTags) - { - boolean isAlreadyInList = false; - for(Tag paymentTag : tags) - { - if(currentTag.getName().equals(paymentTag.getName())) - { - isAlreadyInList = true; - } - } - - if(!isAlreadyInList) - { - newCompletions.add(currentTag.getName()); - } - } - - return newCompletions; - } - - public ArrayList<Tag> getTags() - { - return tags; - } - - public void setTags(ArrayList<Tag> tags) - { - this.tags = tags; - refresh(false); - } - - public void setAllTags(ArrayList<Tag> allTags) - { - this.allTags = allTags; - refresh(false); - } - - public void addTag(String tagName) - { - if(tagName.equals("")) - { - return; - } - - for(Tag currentTag : tags) - { - if(currentTag.getName().equals(tagName)) - { - return; - } - } - - if(tagName.length() > 45) - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_TAG_CHARACTER_LIMIT_REACHED_45), - parentController.getController().getIcon(), - parentController.getStage(), - null, - false); - return; - } - - tags.add(new Tag(-1, tagName)); - refresh(true); - } - - public void removeTag(Tag tag) - { - tags.remove(tag); - refresh(true); - } - - private void refresh(boolean requstFocus) - { - hboxTags.getChildren().clear(); - - for(Tag currentTag : tags) - { - hboxTags.getChildren().add(generateTag(currentTag)); - } - - if(requstFocus) - { - textField.setText(""); - textField.requestFocus(); - } - } - - private HBox generateTag(Tag tag) - { - HBox hboxTag = new HBox(); - hboxTag.setSpacing(5); - hboxTag.setAlignment(Pos.CENTER_LEFT); - hboxTag.setPadding(new Insets(0, 3, 0, 7)); - hboxTag.setStyle("-fx-background-color: #cccccc; -fx-background-radius: 5px;"); - - Label labelTagName = new Label(tag.getName()); - labelTagName.setStyle("-fx-font-size: 13; -fx-text-fill: " + ConvertTo.toRGBHexWithoutOpacity(Colors.TEXT)); - hboxTag.getChildren().add(labelTagName); - - Button buttonDelete = new Button(); - buttonDelete.setGraphic(new FontIcon(FontIconType.TIMES, 13, Colors.TEXT)); - buttonDelete.setStyle("-fx-background-color: transparent;"); - buttonDelete.getStyleClass().add("button-hoverable"); - buttonDelete.setOnAction((event)->{ - removeTag(tag); - }); - hboxTag.getChildren().add(buttonDelete); - - return hboxTag; - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseDeleter.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseDeleter.java deleted file mode 100644 index 83474efdf..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseDeleter.java +++ /dev/null @@ -1,91 +0,0 @@ -package de.deadlocker8.budgetmasterclient.utils; - -import java.util.Optional; - -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import javafx.application.Platform; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.TextInputDialog; -import javafx.stage.Stage; -import logger.Logger; -import tools.AlertGenerator; -import tools.BASE58Type; -import tools.ConvertTo; -import tools.Localization; -import tools.RandomCreations; -import tools.Worker; - -public class DatabaseDeleter -{ - private Controller controller; - - public DatabaseDeleter(Controller controller) - { - this.controller = controller; - } - - public void deleteDatabase(boolean importPending) - { - String verificationCode = ConvertTo.toBase58(RandomCreations.generateRandomMixedCaseString(4, true), true, BASE58Type.UPPER); - - TextInputDialog dialog = new TextInputDialog(); - dialog.setTitle(Localization.getString(Strings.INFO_TITLE_DATABASE_DELETE)); - dialog.setHeaderText(Localization.getString(Strings.INFO_HEADER_TEXT_DATABASE_DELETE)); - dialog.setContentText(Localization.getString(Strings.INFO_TEXT_DATABASE_DELETE, verificationCode)); - Stage dialogStage = (Stage)dialog.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(controller.getIcon()); - dialogStage.initOwner(controller.getStage()); - - Optional<String> result = dialog.showAndWait(); - if(result.isPresent()) - { - if(result.get().equals(verificationCode)) - { - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_DATABASE_DELETE), controller.getStage(), controller.getIcon()); - - Worker.runLater(() -> { - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - connection.deleteDatabase(); - Platform.runLater(() -> { - LoadingModal.closeModal(); - if(importPending) - { - DatabaseImporter importer = new DatabaseImporter(controller); - importer.importDB(); - } - else - { - controller.refresh(controller.getFilterSettings()); - } - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(() -> { - LoadingModal.closeModal(); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - }); - } - }); - } - else - { - AlertGenerator.showAlert(AlertType.WARNING, - Localization.getString(Strings.TITLE_WARNING), - "", - Localization.getString(Strings.WARNING_WRONG_VERIFICATION_CODE), - controller.getIcon(), - controller.getStage(), - null, - false); - deleteDatabase(importPending); - } - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseExporter.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseExporter.java deleted file mode 100644 index 8a92711fc..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseExporter.java +++ /dev/null @@ -1,69 +0,0 @@ -package de.deadlocker8.budgetmasterclient.utils; - -import java.io.File; - -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.FileHelper; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import javafx.application.Platform; -import javafx.scene.control.Alert.AlertType; -import javafx.stage.FileChooser; -import logger.Logger; -import tools.AlertGenerator; -import tools.Localization; -import tools.Worker; - -public class DatabaseExporter -{ - private Controller controller; - - public DatabaseExporter(Controller controller) - { - this.controller = controller; - } - - public void exportDatabase() - { - FileChooser fileChooser = new FileChooser(); - fileChooser.setTitle(Localization.getString(Strings.TITLE_DATABASE_EXPORT)); - FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("JSON (*.json)", "*.json"); - fileChooser.getExtensionFilters().add(extFilter); - File file = fileChooser.showSaveDialog(controller.getStage()); - if(file != null) - { - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_DATABASE_EXPORT), controller.getStage(), controller.getIcon()); - - Worker.runLater(() -> { - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - String databaseJSON = connection.exportDatabase(); - FileHelper.saveDatabaseJSON(file, databaseJSON); - - Platform.runLater(() -> { - LoadingModal.closeModal(); - AlertGenerator.showAlert(AlertType.INFORMATION, - Localization.getString(Strings.INFO_TITLE_DATABASE_EXPORT), - "", - Localization.getString(Strings.INFO_TEXT_DATABASE_EXPORT), - controller.getIcon(), - controller.getStage(), - null, - false); - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(() -> { - LoadingModal.closeModal(); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - }); - } - }); - } - - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseImporter.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseImporter.java deleted file mode 100644 index 5d6ac00ff..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/DatabaseImporter.java +++ /dev/null @@ -1,155 +0,0 @@ -package de.deadlocker8.budgetmasterclient.utils; - -import java.io.File; -import java.io.IOException; -import java.util.Optional; - -import de.deadlocker8.budgetmaster.logic.database.Database; -import de.deadlocker8.budgetmaster.logic.serverconnection.ExceptionHandler; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.FileHelper; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import javafx.application.Platform; -import javafx.scene.control.Alert; -import javafx.scene.control.Alert.AlertType; -import javafx.scene.control.Button; -import javafx.scene.control.ButtonBar.ButtonData; -import javafx.scene.control.ButtonType; -import javafx.scene.control.DialogPane; -import javafx.scene.input.KeyCode; -import javafx.scene.input.KeyEvent; -import javafx.stage.FileChooser; -import javafx.stage.Stage; -import logger.Logger; -import tools.AlertGenerator; -import tools.Localization; -import tools.Worker; - -public class DatabaseImporter -{ - private Controller controller; - - public DatabaseImporter(Controller controller) - { - this.controller = controller; - } - - public void importDatabase() - { - Alert alert = new Alert(AlertType.CONFIRMATION); - alert.setTitle(Localization.getString(Strings.INFO_TITLE_DATABASE_IMPORT_DIALOG)); - alert.setHeaderText(""); - alert.setContentText(Localization.getString(Strings.INFO_TEXT_DATABASE_IMPORT_DIALOG)); - Stage dialogStage = (Stage)alert.getDialogPane().getScene().getWindow(); - dialogStage.getIcons().add(controller.getIcon()); - dialogStage.initOwner(controller.getStage()); - - ButtonType buttonTypeDelete = new ButtonType(Localization.getString(Strings.INFO_TEXT_DATABASE_IMPORT_DIALOG_DELETE)); - ButtonType buttonTypeAppend = new ButtonType(Localization.getString(Strings.INFO_TEXT_DATABASE_IMPORT_DIALOG_APPEND)); - ButtonType buttonTypeCancel = new ButtonType(Localization.getString(Strings.CANCEL), ButtonData.CANCEL_CLOSE); - alert.getButtonTypes().setAll(buttonTypeDelete, buttonTypeAppend, buttonTypeCancel); - - DialogPane dialogPane = alert.getDialogPane(); - dialogPane.getButtonTypes().stream().map(dialogPane::lookupButton).forEach(button -> button.addEventHandler(KeyEvent.KEY_PRESSED, (event) -> { - if(KeyCode.ENTER.equals(event.getCode()) && event.getTarget() instanceof Button) - { - ((Button)event.getTarget()).fire(); - } - })); - - Optional<ButtonType> result = alert.showAndWait(); - if(result.get() == buttonTypeDelete) - { - DatabaseDeleter deleter = new DatabaseDeleter(controller); - deleter.deleteDatabase(true); - } - else if(result.get() == buttonTypeAppend) - { - importDB(); - } - } - - public void importDB() - { - FileChooser fileChooser = new FileChooser(); - fileChooser.setTitle(Localization.getString(Strings.TITLE_DATABASE_IMPORT)); - FileChooser.ExtensionFilter extFilter = new FileChooser.ExtensionFilter("JSON (*.json)", "*.json"); - fileChooser.getExtensionFilters().add(extFilter); - File file = fileChooser.showOpenDialog(controller.getStage()); - if(file != null) - { - Database database; - try - { - database = FileHelper.loadDatabaseJSON(file); - if(database.getCategories() == null - || database.getNormalPayments() == null - || database.getRepeatingPayments() == null - || database.getTags() == null - || database.getTagMatches() == null) - { - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_DATABASE_IMPORT_WRONG_FILE), - controller.getIcon(), - controller.getStage(), - null, - false); - return; - } - } - catch(IOException e1) - { - Logger.error(e1); - AlertGenerator.showAlert(AlertType.ERROR, - Localization.getString(Strings.TITLE_ERROR), - "", - Localization.getString(Strings.ERROR_DATABASE_IMPORT), - controller.getIcon(), - controller.getStage(), - null, - false); - return; - } - - LoadingModal.showModal(controller, Localization.getString(Strings.TITLE_MODAL), Localization.getString(Strings.LOAD_DATABASE_IMPORT), controller.getStage(), controller.getIcon()); - - Worker.runLater(() -> { - try - { - ServerConnection connection = new ServerConnection(controller.getSettings()); - connection.importDatabase(database); - - Platform.runLater(() -> { - LoadingModal.closeModal(); - - AlertGenerator.showAlert(AlertType.INFORMATION, - Localization.getString(Strings.INFO_TITLE_DATABASE_IMPORT), - "", - Localization.getString(Strings.INFO_TEXT_DATABASE_IMPORT), - controller.getIcon(), - controller.getStage(), - null, - false); - - controller.refresh(controller.getFilterSettings()); - }); - } - catch(Exception e) - { - Logger.error(e); - Platform.runLater(() -> { - LoadingModal.closeModal(); - controller.showConnectionErrorAlert(ExceptionHandler.getMessageForException(e)); - }); - } - }); - } - else - { - controller.refresh(controller.getFilterSettings()); - } - } -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/LoadingModal.java b/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/LoadingModal.java deleted file mode 100644 index 748c5ee5e..000000000 --- a/BudgetMasterClient/src/main/java/de/deadlocker8/budgetmasterclient/utils/LoadingModal.java +++ /dev/null @@ -1,78 +0,0 @@ -package de.deadlocker8.budgetmasterclient.utils; - -import java.io.IOException; - -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmasterclient.ui.controller.Controller; -import de.deadlocker8.budgetmasterclient.ui.controller.ModalController; -import javafx.fxml.FXMLLoader; -import javafx.scene.Parent; -import javafx.scene.Scene; -import javafx.scene.image.Image; -import javafx.stage.Modality; -import javafx.stage.Stage; -import logger.Logger; -import tools.Localization; - -public class LoadingModal -{ - private static Stage modalStage; - private static ModalController modalController; - - public static void showModal(Controller controller, String title, String message, Stage owner, Image icon) - { - closeModal(); - modalStage = createModal(controller, title, message, owner, icon); - } - - public static void setMessage(String message) - { - if(modalController != null) - { - modalController.setMessage(message); - } - } - - public static void closeModal() - { - if(modalStage != null) - { - modalController.closeAlert(); - modalStage.close(); - modalStage = null; - modalController = null; - } - } - - public static boolean isShowing() - { - return modalStage != null && modalStage.isShowing(); - } - - private static Stage createModal(Controller controller, String title, String message, Stage owner, Image icon) - { - try - { - FXMLLoader fxmlLoader = new FXMLLoader(Helpers.class.getResource("/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml")); - Parent root = (Parent)fxmlLoader.load(); - fxmlLoader.setResources(Localization.getBundle()); - Stage newStage = new Stage(); - newStage.initOwner(owner); - newStage.initModality(Modality.APPLICATION_MODAL); - newStage.setTitle(title); - newStage.setScene(new Scene(root)); - newStage.getIcons().add(icon); - newStage.setResizable(false); - modalController = fxmlLoader.getController(); - modalController.init(controller, newStage, message); - newStage.show(); - - return newStage; - } - catch(IOException e) - { - Logger.error(e); - return null; - } - } -} diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/changelog.json b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/changelog.json deleted file mode 100644 index 3c430ae2f..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/changelog.json +++ /dev/null @@ -1,12 +0,0 @@ -{ - "1":"Client\n-implemented remaining budget overview\n-implemented payment overview\n-implemented categories\n-implemented settings\n\nServer\n-implemented database creation\n-implemented database queries\n-implemented functionality to calculate rest\n-implemented HTTPS\n-implemented server password\n", - "2":"Added functionality to filter payments\n", - "3":"-added charts\n-added database imprt/export/delete functionality\n-implemented better connection error handling\n-bugfixes\n", - "4":"-added possibility to export payments as pdf reports\n-added possibility to export charts as images\n-added unit tests\n-bugfixes\n-security improvements\n -improved database access\n -added password on start\n", - "5":"-bugfixes\n-reports can now include a budget calculation\n", - "6":"Fixed critical bug that prevents repeating payments from being correctly updated for future months.\n", - "7":"-localized all strings into external file\n-added english localization\n-added language chooser to settings\n-remove javafx.Color from server --> server should no run on linux with normal jdk\n-bugfixes:\n -[FIXED] - report budget is calculated incorrectly\n -[FIXED] - refresh after database imprt/delete missing\n -[FIXED] - critical bug concerning repeating payments\n", - "8":"bugfixes:\n -broken month chart if january is selected\n -wrong footer in month report\n -wrong initial file name for month report\n -server start failure\n", - "9":"-remember report table column order and selection\n-added Updater for easier client update procedure\n-bugfixes\n", - "10":"-added tag system (tag payments, suggestion of already used payments, ...)\n-added search for payments (search by name, description, category, tags and amount)\n-added better month/year picker (click on date to open)\n-payment description is now shown in payment tab\n-added hover effect for buttons in main stage to make more clear that they are clickable\n-replaced font in reports\n-settings are now scrollable\n-categories are now sorted alphabetically\n-bugfixes:\n -various bugs concerning the prefilled values of input fields\n-database import\n-compatibility issues with old ReportPreferences\n-available version label was not updated on manual update search\n-non running server leads to alert that states that the server version is not compatible\n" -} \ No newline at end of file diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/flags/english.png b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/flags/english.png deleted file mode 100644 index 56268bc43902937b857b586498cf5059a7926f36..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 18427 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 Gp$Pz*Q!GmW diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/flags/german.png b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/flags/german.png deleted file mode 100644 index 2644cdb785a2ef8eb806b0ae25bcc03c1160ae52..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7881 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 T-YaBaU|{fc^>bP0l+XkKXD1!e diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/fonts/OpenSans-Regular.ttf b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/fonts/OpenSans-Regular.ttf deleted file mode 100644 index 2e31d02424ed50b9e05c19b5d82500699a6edbb0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 217276 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 diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/icon.png b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/icon.png deleted file mode 100644 index be71fa009b5091dc1b6cdd99c2c171609d25339e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6873 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 diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/languages/_de.properties b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/languages/_de.properties deleted file mode 100644 index ec351e3a3..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/languages/_de.properties +++ /dev/null @@ -1,350 +0,0 @@ -# DEFAULT -app.name=BudgetMaster -version.code=13 -version.name=1.8.0 -version.date=17.12.17 -author=Robert Goldmann -credits=L�nderflaggen von Freepik auf https://www.flaticon.com\nVerwendete Schriftarten: OpenSans\nVerwendete Bibliotheken:\ngson 2.8.1\njoda-time 2.9.7\nitextpdf 5.0.6\nlaunch4j-maven-plugin 1.7.21\nspark-core 2.5.4\nslf4j 1.7.21\nmysql-connector 6.0.5\njunit 4.12\nsqlite-jdbc 3.21.0 - -folder=Deadlocker/BudgetMaster -roadmap.url=https://deadlocker.thecodelabs.de/roadmap/php/index.php?id=1 -github.url=https://github.com/deadlocker8/BudgetMaster - - -# TITLE -title.incomes=Einnahmen -title.income=Einnahme -title.payments=Ausgaben -title.payment=Ausgabe -title.categories=Kategorien -title.category=Kategorie -title.category.budgets=Verbrauch nach Kategorien -title.amount=Betrag -title.info=Hinweis -title.warning=Warnung -title.error=Fehler -title.category.new=Neue Kategorie -title.category.edit=Kategorie bearbeiten -title.chart.export=Diagramm exportieren -title.modal=Vorgang l�uft -title.payment.edit={0} bearbeiten -title.payment.new=Neue {0} -title.filter=Filter -title.search=Suchen -title.report.save=Bericht speichern -title.database.export=Datenbank exportieren -title.database.import=Datenbank importieren -title.datepicker=Datum w�hlen -title.tags=Das Tag-Eingabefeld - -# LOAD -load.charts=Lade Diagramme... -load.data=Lade Daten... -load.report.tab=Lade Monatsbericht... -load.report=Der Monatsbericht wird erstellt, bitte warten... -load.database.export=Die Datenbank wird exportiert, bitte warten... -load.database.import=Die Datenbank wird importiert, bitte warten... -load.database.delete=Die Datenbank wird gel�scht, bitte warten... -load.update=Update wird heruntergeladen, bitte warten... -load.search=Buchungen werden gesucht, bitte warten... -load.local.server=Starte lokalen Server, bitte warten... -load.download.local.server=Lade lokalen Server herunter, bitte warten... -load.local.server.connect=Verbinde mit lokalem Server, bitte warten... -load.local.server.retry=Verbinde mit lokalem Server... (Versuch {0}/{1}) - -# MISC -category.none=Keine Kategorie -category.rest=�bertrag -tooltip.chart.categories={0}\n{1} %\n{2} -chart.month.line.sum=Summe in {0} -categories.placeholder=Keine Kategorien verf�gbar -chart.categories.title.incomes=Einnahmen nach Kategorien -chart.categories.title.payments=Ausgaben nach Kategorien -ok=OK -cancel=Abbrechen -home.placeholder=Keine Daten verf�gbar -home.budget=von {0} verbleibend -payments.placeholder=Keine Daten verf�gbar -url.placeholder=z.B. https://yourdomain.de -currency.placeholder=z.B. \u20AC, CHF, $ -trusted.hosts.placeholder=z.B. localhost -undefined=unbekannt -tagfield.placeholder=Neuen Tag hier eingeben -shortcut.dev.console=F12 -local.server.status.ok=Server ist gestartet. -local.server.status.not.started=Server konnte nicht gestartet werden. -local.server.action.not.started=Starten -local.server.status.not.present=Server nicht gefunden. -local.server.action.not.present=Herunterladen -local.server.status.incompatible=Server nicht kompatibel. -local.server.action.incompatible=Aktualisieren - -# REPORT -report.position=Nr. -report.date=Datum -report.repeating=Wiederholend -report.category=Kategorie -report.name=Name -report.description=Notiz -report.tags=Tags -report.rating=+/- -report.amount=Betrag -report.headline=Monatsbericht - {0} -report.headline.payments.overview=Buchungs�bersicht -report.sum.total=Einnahmen: {0} / Ausgaben: {1} -report.sum=Summe: {0} -report.footer.left=BudgetMaster Monatsbericht -report.footer.center=Seite {0} -report.repeating.yes=Ja -report.repeating.no=Nein -report.initial.filename=BudgetMaster Monatsbericht - {0}_{1}.pdf -report.budget=Budget -report.incomes=Einnahmen: -report.payments=Ausgaben: -report.budget.rest=Restbudget: - -# MONTH -month.january=Januar -month.february=Februar -month.march=M�rz -month.april=April -month.may=Mai -month.june=Juni -month.july=Juli -month.august=August -month.september=September -month.october=Oktober -month.november=November -month.december=Dezember - -# NOTIFICATION -notification.chart.export=Diagramm erfolgreich exportiert. -notification.report.save=Bericht erfolgreich gespeichert. -notification.settings.save=Erfolgreich gespeichert. -notification.no.update.available=Kein Update verf�gbar. - -# INFO -info.title.category.delete=Kategorie l�schen -info.text.category.delete=M�chtest du diese Kategorie wirklich unwiderruflich l�schen? -info.title.payment.delete=Zahlung l�schen -info.text.payment.delete=M�chtest du diese Zahlung wirklich unwiderruflich l�schen? -info.text.payment.repeating.delete=Es handelt sich um eine wiederkehrende Zahlung. Welche Zahlungen sollen gel�scht werden? -info.text.payment.repeating.delete.all=Alle -info.text.payment.repeating.delete.futures=Alle zuk�nftigen -info.first.start=Vor der ersten Benutzung musst du deine Serverdaten eingeben. -info.title.chart.export=Erfolgreich erstellt -info.text.chart.export=Das Diagramm wurde erfolgreich exportiert. -info.text.chart.export.open.folder=Ordner �ffnen -info.text.chart.export.open.chart=Diagramm �ffnen -info.title.report.save=Erfolgreich erstellt -info.text.report.save=Der Monatsbericht wurde erfolgreich erstellt. -info.text.report.save.open.folder=Ordner �ffnen -info.text.report.save.open.report=Bericht �ffnen -info.title.database.export=Erfolgreich exportiert -info.text.database.export=Die Datenbank wurde erfolgreich exportiert. -info.title.database.import=Erfolgreich importiert -info.text.database.import=Die Datenbank wurde erfolgreich importiert. -info.title.database.import.dialog=Datebank importieren -info.text.database.import.dialog=Soll die Datenbank vor dem Importieren gel�scht werden? -info.text.database.import.dialog.delete=Ja, Datenbank l�schen -info.text.database.import.dialog.append=Nein, Daten hinzuf�gen -info.title.database.delete=Datenbank l�schen -info.header.text.database.delete=Soll die Datenbank wirklich gel�scht werden? -info.text.database.delete=Zur Best�tigung gib folgenden Code ein:\t{0} -info.title.welcome=Willkommen -info.header.text.welcome=Willkommen beim BudgetMaster -info.text.welcome.first.start=Dies scheint dein erster Besuch zu sein, da noch keine Einstellungen existieren.\nDamit es losgehen kann, �berlege dir ein Passwort und trage es in das Passwortfeld ein.\n\n(Hinweis: Das Passwort kann sp�ter jederzeit ge�ndert werden.)\n\n -info.text.welcome.compatibility=Deine Einstellungsdatei ist veraltet und muss aktualisert werden.\nSeit Version v1.3.0 wird ein Passwort ben�tigt, um BudgetMaster zu entsperren. Damit es losgehen kann, �berlege dir ein Passwort und trage es in das Passwortfeld ein.\n\n(Hinweis: Das Passwort kann sp�ter jederzeit ge�ndert werden.)\n\n -info.title.language.changed=Neustarten -info.text.language.changed=�nderungen der Sprache werden erst nach einem Neustart des Programms wirksam. -info.text.language.changed.restart.now=Jetzt neustarten -info.text.language.changed.restart.later=Sp�ter neustarten -info.title.update.available=Update verf�gbar -info.text.update.available=Ein Update ist verf�gbar.\nNeue Version: {0}\n\n -info.text.update.available.show.changes=�nderungen anzeigen (�ffnet Webbrowser) -info.text.update.available.show.changes.detailed=(detaillierte Infos auf GitHub.com) -info.text.update.available.now=Jetzt updaten -info.title.start.after.update=Update erfolgreich -info.header.text.start.after.update=BudgetMaster wurde erfolgreich auf Version {0} aktualisiert -info.text.start.after.update=Hinweis: Der BudgetMasterServer muss manuell von dir geupdated werden, sofern es sich um keinen lokalen Server handelt! -info.tags=Es erscheinen Vorschl�ge basierend auf bereits verwendeten Tags sobald du zu tippen beginnst.\n\nEnter - F�gt den Inhalt des Eingabefelds als neuen Tag hinzu.\nPfeil nach unten - �ffnet die Vorschl�ge, wenn das Eingabefeld leer ist. -info.title.shutdown=BudgetMaster beenden -info.text.shutdown=M�chtest du BudgetMaster wirklich beenden?\nDies kann w�hrend der Ausf�hrung von Aufgaben zu unvorhersebaren Konsequenzen f�hren. - -# WARNING -warning.enddate.before.startdate=Das Enddatum darf zeitlich nicht vor dem Startdatum liegen. -warning.empty.width.in.pixels=Bitte gib eine Breite in Pixeln an. -warning.integer.width.in.pixels=Nur ganzahlige Werte sind f�r das Feld Breite erlaubt. -warning.empty.height.in.pixels=Bitte gib eine H�he in Pixeln an. -warning.integer.height.in.pixels=Nur ganzahlige Werte sind f�r das Feld H�he erlaubt. -warning.empty.savepath.chart=W�hle einen Speicherort f�r das Diagramm aus. -warning.empty.category.name=Das Feld f�r den Namen darf nicht leer sein. -warning.empty.payment.name=Das Feld f�r den Namen darf nicht leer sein. -warning.name.character.limit.reached.45=Der Name darf maximal 45 Zeichen lang sein. -warning.name.character.limit.reached.150=Der Name darf maximal 150 Zeichen lang sein. -warning.description.character.limit.reached.200=Die Notiz darf maximal 200 Zeichen lang sein. -warning.tag.character.limit.reached.45=Der Name eines Tags darf maximal 45 Zeichen lang sein. -warning.payment.amount=Gib eine g�ltige Zahl f�r den Betrag ein. -warning.empty.payment.date=Bitte w�hle ein Datum aus. -warning.payment.repeating=Wenn Wiederholung aktiviert ist d�rfen nicht beide Eingabefelder 0 sein.\n(Zur Deaktivierung der Wiederholung einfach die Checkbox abw�hlen) -warning.empty.secret.client=Das Feld f�r das Client Passwort darf nicht leer sein. -warning.empty.url=Das Feld f�r die Server URL darf nicht leer sein. -warning.empty.secret.server=Das Server Passwortfeld darf nicht leer sein. -warning.empty.currency=Bitte gib deine gew�nschte W�hrung ein. -warning.wrong.verificationcode=Die Eingabe stimmt nicht mit dem Best�tigungscode �berein. -warning.empty.password=Bitte gib dein Passwort ein. -warning.wrong.password=Das Passwort ist nicht korrekt. -warning.server.version=Die installierte Serverversion (Version: {0}) ist nicht kompatibel mit deinem Client (Version: {1}).\n\nBitte aktualisiere deinen Server:\nSchritt 1: Server stoppen\nSchritt 2: BudgetMasterServer.jar mit aktuellester Version ersetzen\nSchritt 3: Server starten -warning.empty.year=Bitte gib ein Jahr ein. -warning.wrong.year=Bitte gib eine g�ltige Jahreszahl ein (4 Ziffern). - -# ERROR -error.unknown.host=Es konnte keine Verbindung mit dem Internet hergestellt werden. -error.unknown.error=Unbekannter Fehler ({0}) -error.connection.refused=Server nicht erreichbar. -error.https.hostname.wrong=Der Server verwendet ein selbst signiertes Zertifkat f�r die Verschl�sselung. Aus Sicherheitsgr�nden werden diese Zertifikate standardm��ig blockiert. Wenn du dem Zertifikat trotzdem vertrauen m�chtest, dann f�ge den Hostnamen des Servers zur Liste der vertrauensw�rdigen Hosts in den Einstellungen hinzu. -error.400=Der Server erhielt eine fehlerhafte Anfrage oder ung�ltige Parameter. -error.401=Ung�ltiges Server Passwort. -error.500=Beim Ausf�hren der Anfrage ist ein interner Serverfehler ist aufgetreten. -error.create.ui=Beim Erstellen der Benutzeroberfl�che ist ein Fehler aufgetreten. -error.server.connection=Beim Herstellen der Verbindung zum Server ist ein Fehler aufgetreten. Bitte �berpr�fe deine Einstellungen. -error.server.connection.with.details=Beim Herstellen der Verbindung zum Server ist ein Fehler aufgetreten. Bitte �berpr�fe deine Einstellungen.\n\nFehlerdetails:\n{0} -error.open.folder=Der Ordner konnte nicht ge�ffnet werden.\n\n{0} -error.open.chart=Das Diagramm konnte nicht ge�ffnet werden.\n\n{0} -error.open.report=Der Bericht konnte nicht ge�ffnet werden.\n\n{0} -error.chart.export=Beim Exportieren des Diagramms ist ein Fehler aufgetreten:\n\n{0} -error.report.save=Beim Erstellen des Monatsberichts ist ein Fehler aufgetreten:\n\n{0} -error.settings.save=Beim Speichern der Einstellungen ist ein Fehler aufgetreten. -error.database.import=Beim Einlesen der Datei ist ein Fehler aufgetreten. -error.database.import.wrong.file=Die angegebene Datei enth�lt kein g�ltiges BudgetMaster-Datenformat und kann daher nicht importiert werden. -error.password.save=Beim Speichern des Passworts ist ein Fehler aufgetreten. -error.updater.get.latest.version=Beim �berpr�fen auf Updates ist ein Fehler aufgetreten. Informationen zu neuen Versionen konnten nicht abgerufen werden. Versuche es sp�ter noch einmal. -error.updater.download.latest.version=Beim Herunterladen des Updates ist ein Fehler aufgetreten.\n\n{0} -error.open.browser=Beim �ffnen des Standardwebbrowsers ist ein Fehler aufgetreten. -error.local.server.start=Beim Starten des BudgetMasterServers ist ein Fehler aufgetreten.\n\n{0} -error.local.server.download=Beim Herunterladen des BudgetMasterServers ist ein Fehler aufgetreten.\n\n{0} - -# UI -categorytab.button.category.new=\ Neue Kategorie - -charttab.titlepane.chart.categories=Einnahmen/Ausgaben nach Kategorien -charttab.titlepane.chart.months=Einnahmen/Ausgaben pro Monat -charttab.label.start=Von: -charttab.label.end=Bis: -charttab.checkbox.bars=Balken -charttab.checkbox.lines=Linien - -export.chart.label.width=Breite: -export.chart.label.height=H�he: -export.chart.label.savepath=Speicherort: -export.chart.button.change=�ndern -export.chart.button.export=Exportieren - -filter.headline=Filtern nach: -filter.type=Art -filter.type.income=Einnahme -filter.type.payment=Ausgabe -filter.repeating=Wiederholung -filter.repeating.none=keine -filter.repeating.monthday=monatlich -filter.repeating.interval=alle X Tage -filter.categories=Kategorien -filter.categories.button.all=Alle -filter.categories.button.none=Keine -filter.name=Name -filter.tags=Tags -filter.tags.button.all=Alle -filter.tags.button.none=Keine -filter.button.reset=Zur�cksetzen -filter.button.filter=Filtern - -search.headline=Nach Buchungen suchen -search.by=Suchen in: -search.by.name=Name -search.by.description=Notiz -search.by.category.name=Kategoriename -search.by.tags=Tags -search.by.amount=Betrag eingrenzen -search.button.search=Suchen - -gui.tab.home=Startseite -gui.tab.payments=Buchungen -gui.tab.categories=Kategorien -gui.tab.charts=Diagramme -gui.tab.report=Monatsbericht -gui.tab.settings=Einstellungen - -hometab.categorybudgets=Verbrauch nach Kategorien - -category.new.label.name=Name: -category.new.label.max.characters=(max. 45 Zeichen) -category.new.label.color=Farbe: -category.new.button.save=Speichern - -payment.new.label.name=Name: -payment.new.label.max.characters.name=(max. 150 Zeichen) -payment.new.label.max.characters.description=(max. 200 Zeichen) -payment.new.label.amount=Betrag: -payment.new.label.category=Kategorie: -payment.new.label.date=Datum: -payment.new.label.description=Notiz: -payment.new.label.tags=Tags: -payment.new.label.repeating=Wiederholung: -payment.new.label.repeating.all=Alle -payment.new.label.repeating.days=Tage -payment.new.label.repeating.monthday=jeden Monat am: -payment.new.label.enddate=Enddatum: -payment.new.button.save=Speichern - -paymenttab.button.new.income=\ Neue Einnahme -paymenttab.button.new.payment=\ Neue Ausgabe -paymenttab.button.filter=Filter -paymenttab.label.filter.active=Filter aktiv -paymenttab.label.incomes=Einnahmen: -paymenttab.label.payments=Ausgaben: -paymenttab.button.search=Suchen - -reporttab.checkbox.include.budget=Budgetkalkulation hinzuf�gen -reporttab.checkbox.split.tables=Einnahmen und Ausgaben als getrennte Tabellen -reporttab.checkbox.inclue.categorybudgets=Verbrauch nach Kategorien hinzuf�gen -reporttab.button.generate.report=Bericht erzeugen - -settingstab.label.secret.client=Client Passwort: -settingstab.label.status=Status: -settingstab.label.url=Server URL: -settingstab.label.secret.server=Server Passwort: -settingstab.label.currency=W�hrung: -settingstab.label.rest=�bertrag: -settingstab.label.rest.activated=aktiviert -settingstab.label.rest.deactivated=deaktiviert -settingstab.label.trusted.hosts=Vertrauensw�rdige Hosts: -settingstab.label.trusted.hosts.info=(ein Host pro Zeile) -settingstab.label.language=Sprache: -settingstab.label.database=Datenbank: -settingstab.button.database.export=Exportieren -settingstab.button.database.import=Importieren -settingstab.button.database.delete=L�schen -settingstab.label.updates=Updates: -settingstab.button.updates.search=Suchen -settingstab.button.updates.automatic=Automatisch suchen -settingstab.label.updates.current.version=Installiert: -settingstab.label.updates.latest.version=Verf�gbar: -settingstab.button.save=Speichern -settingstab.button.server.online=Online Server -settingstab.button.server.local=Lokaler Server - -splashscreen.label.password=Passwort: - -datepicker.label.month=Monat: -datepicker.label.year=Jahr: -datepicker.button.confirm=�bernehmen - -# ABOUT -about=�ber {0} -about.roadmap.link=Roadmap �ffnen -about.version=Version: -about.date=Datum: -about.author=Autor: -about.roadmap=Roadmap: -about.sourcecode=Quellcode: -about.credits=Credits: diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/languages/_en.properties b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/languages/_en.properties deleted file mode 100644 index 4157b60f9..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/languages/_en.properties +++ /dev/null @@ -1,350 +0,0 @@ -# DEFAULT -app.name=BudgetMaster -version.code=13 -version.name=1.8.0 -version.date=17.12.17 -author=Robert Goldmann -credits=Flags by Freepik on https://www.flaticon.com\nFonts used: OpenSans\nLibraries used:\ngson 2.8.1\njoda-time 2.9.7\nitextpdf 5.0.6\nlaunch4j-maven-plugin 1.7.21\nspark-core 2.5.4\nslf4j 1.7.21\nmysql-connector 6.0.5\njunit 4.12\nsqlite-jdbc 3.21.0 - -folder=Deadlocker/BudgetMaster -roadmap.url=https://deadlocker.thecodelabs.de/roadmap/php/index.php?id=2 -github.url=https://github.com/deadlocker8/BudgetMaster - - -# TITLE -title.incomes=Incomes -title.income=Income -title.payments=Payments -title.payment=Payment -title.categories=Categories -title.category=Category -title.category.budgets=Consumption by categories -title.amount=Amount -title.info=Information -title.warning=Warning -title.error=Error -title.category.new=New Category -title.category.edit=Edit Category -title.chart.export=Export Chart -title.modal=Process is running -title.payment.edit=Edit {0} -title.payment.new=New {0} -title.filter=Filter -title.search=Search -title.report.save=Save Report -title.database.export=Export Database -title.database.import=Import Database -title.datepicker=Choose date -title.tags=The Tag-Inputfield - -# LOAD -load.charts=Loading Charts... -load.data=Loading Data... -load.report.tab=Loading Month Report... -load.report=Please wait while the report is being generated... -load.database.export=Please wait while the database is being exported... -load.database.import=Please wait while the database is being imported... -load.database.delete=Please wait while the database is being deleted... -load.update=Please wait while the update is being downloaded... -load.search=Please wait while payments are being searched... -load.local.server=Please wait while the local server is being started... -load.download.local.server=Please wait while the local server is being downloaded... -load.local.server.connect=Connecting to local server... -load.local.server.retry=Connecting to local server... (Retry {0}/{1}) - -# MISC -category.none=No Category -category.rest=Rest -tooltip.chart.categories={0}\n{1} %\n{2} -chart.month.line.sum=Total in {0} -categories.placeholder=No categories available -chart.categories.title.incomes=Incomes by Categories -chart.categories.title.payments=Payments by Categories -ok=OK -cancel=Cancel -home.placeholder=No data available -home.budget=of {0} remaining -payments.placeholder=No data available -url.placeholder=e.g. https://yourdomain.de -currency.placeholder=e.g. \u20AC, CHF, $ -trusted.hosts.placeholder=e.g. localhost -undefined=undefined -tagfield.placeholder=Enter new Tag here -shortcut.dev.console=F12 -local.server.status.ok=Server is running. -local.server.status.not.started=Server couldn't be started. -local.server.action.not.started=Start -local.server.status.not.present=Server not found. -local.server.action.not.present=Download -local.server.status.incompatible=Server is incompatible. -local.server.action.incompatible=Update - -# REPORT -report.position=No. -report.date=Date -report.repeating=Repeating -report.category=Category -report.name=Name -report.description=Description -report.tags=Tags -report.rating=+/- -report.amount=Amount -report.headline=Month Report - {0} -report.headline.payments.overview=Payments Overview -report.sum.total=Incomes: {0} / Payments: {1} -report.sum=Total: {0} -report.footer.left=BudgetMaster Month Report -report.footer.center=Page {0} -report.repeating.yes=Yes -report.repeating.no=No -report.initial.filename=BudgetMaster Month Report - {0}_{1}.pdf -report.budget=Budget -report.incomes=Incomes: -report.payments=Payments: -report.budget.rest=Remaining Budget: - -# MONTH -month.january=January -month.february=February -month.march=March -month.april=April -month.may=May -month.june=June -month.july=July -month.august=August -month.september=September -month.october=October -month.november=November -month.december=December - -# NOTIFICATION -notification.chart.export=Chart successfully exported. -notification.report.save=Report successfully saved. -notification.settings.save=Successfully saved. -notification.no.update.available=No update available. - -# INFO -info.title.category.delete=Delete Category -info.text.category.delete=Do you really want to delete this category? This can't be undone. -info.title.payment.delete=Delete Entry -info.text.payment.delete=Do you really want to delete this entry? This can't be undone. -info.text.payment.repeating.delete=The entry you want to delete is a repeating entry. What entries should be deleted? -info.text.payment.repeating.delete.all=All Entries -info.text.payment.repeating.delete.futures=Future Entries -info.first.start=You must enter your server settings prior to first use. -info.title.chart.export=Successfully Exported -info.text.chart.export=The chart has been successfully exported. -info.text.chart.export.open.folder=Open Folder -info.text.chart.export.open.chart=Open Chart -info.title.report.save=Successfully Created -info.text.report.save=The month report has been successfully created. -info.text.report.save.open.folder=Open Folder -info.text.report.save.open.report=Open Report -info.title.database.export=Successfully Exported -info.text.database.export=The database has been successfully exported. -info.title.database.import=Successfully Imported -info.text.database.import=The database has been successfully imported. -info.title.database.import.dialog=Import Database -info.text.database.import.dialog=Do you want to delete the database before importing? -info.text.database.import.dialog.delete=Yes, delete database -info.text.database.import.dialog.append=No, append data -info.title.database.delete=Delete Database -info.header.text.database.delete=Do you really want to delete this entry? This can't be undone. -info.text.database.delete=Please enter the following code for verification:\t{0} -info.title.welcome=Welcome -info.header.text.welcome=Welcome to BudgetMaster -info.text.welcome.first.start=This seems to be your first visit because there are no settings yet.\nTo enter BudgetMaster consider yourself a password and enter it into the password field.\n\n(Note: the password can be changed at any time.)\n\n -info.text.welcome.compatibility=Your settings file is deprecated and needs to be updated.\nSince version v1.3.0, a password is required to unlock BudgetMaster. To enter BudgetMaster consider yourself a password and enter it into the password field.\n\n(Please note that the password can be changed at any time.)\n\n -info.title.language.changed=Restart -info.text.language.changed=Changes to the language will only take effect after a restart of the program. -info.text.language.changed.restart.now=Restart Now -info.text.language.changed.restart.later=Restart Later -info.title.update.available=Update available -info.text.update.available=An update is available.\nNew version: {0}\n\n -info.text.update.available.show.changes=Show Changes (opens web browsers) -info.text.update.available.show.changes.detailed=(detailed information on GitHub.com) -info.text.update.available.now=Update Now -info.title.start.after.update=Update successful -info.header.text.start.after.update=Successfully updated BudgetMaster to version {0} -info.text.start.after.update=Note: You have to update the BudgetMasterServer manually, if it's no local server! -info.tags=Suggestions based on already used tags will show up once you start typing.\n\nEnter - Appends the current input field content as a new tag.\nArrow Down - Opens the suggestions if the input field is empty. -info.title.shutdown=Shutdown BudgetMaster -info.text.shutdown=Do you really want to shutdown BudgetMaster? This could lead to unforeseen consequences during running tasks. - -# WARNING -warning.enddate.before.startdate=The end date can not be earlier than the start date. -warning.empty.width.in.pixels=Please enter a width in pixels. -warning.integer.width.in.pixels=Only integer values are allowed for the width field. -warning.empty.height.in.pixels=Please enter a height in pixels. -warning.integer.height.in.pixels=Only integer values are allowed for the height field. -warning.empty.savepath.chart=Please select a location where you want to save the chart. -warning.empty.category.name=The field for the name can not be empty. -warning.empty.payment.name=The field for the name can not be empty. -warning.name.character.limit.reached.45=The name must not exceed 45 characters in length. -warning.name.character.limit.reached.150=The name must not exceed 150 characters in length. -warning.description.character.limit.reached.200=The description must not exceed 200 characters in length. -warning.tag.character.limit.reached.45=A tag name must not exceed 45 characters in length. -warning.payment.amount=Please enter a valid number in the amount field. -warning.empty.payment.date=Please select a date. -warning.payment.repeating=If repeating is activated, both input fields may not be 0.\n(To deactivate the repeat, simply deselect the checkbox). -warning.empty.secret.client=The field for the client password can not be empty. -warning.empty.url=The field for the server URL can not be empty. -warning.empty.secret.server=The field for the server password can not be empty. -warning.empty.currency=Please enter your desired currency. -warning.wrong.verificationcode=The input does not match the verification code. -warning.empty.password=Please enter your password. -warning.wrong.password=The password is not correct. -warning.server.version=The installed server version (version: {0}) is not compatible with your client (version: {1}).\n\nPlease update your server:\nStep 1: stop server\nStep 2: replace BudgetMasterServer.jar with latest version\nStep 3: start server -warning.empty.year=Please enter a year. -warning.wrong.year=Please enter a valid year (4 digits). - -# ERROR -error.unknown.host=Could not connect to the Internet. -error.unknown.error=Unknown Error ({0}) -error.connection.refused=Server not available. -error.https.hostname.wrong=The server uses a self-signed certifier for encryption. For security reasons, these certificates are blocked by default. If you want to trust the certificate, add the hostname of the server to the list of trusted hosts in the settings. -error.400=The server received a bad request or invalid parameters. -error.401=Invalid Server Password. -error.500=An internal server error occurred while processing the request. -error.create.ui=An error occurred while creating the user interface. -error.server.connection=An error occurred while connecting to the server. Please check your settings. -error.server.connection.with.details=An error occurred while connecting to the server. Please check your settings.\n\nError details:\n{0} -error.open.folder=The folder couldn't be opened.\n\n{0} -error.open.chart=The chart couldn't be opened.\n\n{0} -error.open.report=The report couldn't be opened.\n\n{0} -error.chart.export=An error occurred while exporting the chart:\n\n{0} -error.report.save=An error occurred while creating the month report:\n\n{0} -error.settings.save=An error occurred while saving the settings. -error.database.import=An error occurred while reading the file. -error.database.import.wrong.file=The specified file does not contain a valid BudgetMaster data format thus can not be imported. -error.password.save=An error occurred while saving the password. -error.updater.get.latest.version=An error occurred while checking for updates. Information about latest versions could not be retrieved. Please try again later. -error.updater.download.latest.version=An error occurred while downloading the update.\n\n{0} -error.open.browser=An error occurred while opening the default web browser. -error.local.server.start=An error occurred while starting the BudgetMasterServer.\n\n{0} -error.local.server.download=An error occurred while downloading the BudgetMasterServer.\n\n{0} - -# UI -categorytab.button.category.new=\ New Category - -charttab.titlepane.chart.categories=Incomes/Payments by Categories -charttab.titlepane.chart.months=Incomes/Payments per Month -charttab.label.start=From: -charttab.label.end=To: -charttab.checkbox.bars=Bars -charttab.checkbox.lines=Lines - -export.chart.label.width=Width: -export.chart.label.height=Height: -export.chart.label.savepath=Location: -export.chart.button.change=Change -export.chart.button.export=Export - -filter.headline=Filter by: -filter.type=Type -filter.type.income=Income -filter.type.payment=Payment -filter.repeating=Repeating -filter.repeating.none=none -filter.repeating.monthday=monthly -filter.repeating.interval=every X days -filter.categories=Categories -filter.categories.button.all=All -filter.categories.button.none=None -filter.name=Name -filter.tags=Tags -filter.tags.button.all=All -filter.tags.button.none=None -filter.button.reset=Reset -filter.button.filter=Filter - -search.headline=Search for payments -search.by=Search in: -search.by.name=Name -search.by.description=Description -search.by.tags=Tags -search.by.category.name=Category Name -search.by.amount=Limit Amount -search.button.search=Search - -gui.tab.home=Home -gui.tab.payments=Payments -gui.tab.categories=Categories -gui.tab.charts=Charts -gui.tab.report=Month Report -gui.tab.settings=Settings - -hometab.categorybudgets=Consumption by categories - -category.new.label.name=Name: -category.new.label.max.characters=(up to 45 characters) -category.new.label.color=Color: -category.new.button.save=Save - -payment.new.label.name=Name: -payment.new.label.max.characters.name=(up to 150 characters) -payment.new.label.max.characters.description=(up to 200 characters) -payment.new.label.amount=Amount: -payment.new.label.category=Category: -payment.new.label.date=Date: -payment.new.label.description=Description: -payment.new.label.tags=Tags: -payment.new.label.repeating=Repeating: -payment.new.label.repeating.all=every -payment.new.label.repeating.days=days -payment.new.label.repeating.monthday=every month at: -payment.new.label.enddate=Enddate: -payment.new.button.save=Save - -paymenttab.button.new.income=\ New Income -paymenttab.button.new.payment=\ New Payment -paymenttab.button.filter=Filter -paymenttab.label.filter.active=Filter active -paymenttab.label.incomes=Incomes: -paymenttab.label.payments=Payments: -paymenttab.button.search=Search - -reporttab.checkbox.include.budget=Include budget calculation -reporttab.checkbox.split.tables=Split incomes and payments into separate tables -reporttab.checkbox.inclue.categorybudgets=Include consumption by categories -reporttab.button.generate.report=Create Report - -settingstab.label.secret.client=Client Password: -settingstab.label.status=Status: -settingstab.label.url=Server URL: -settingstab.label.secret.server=Server Password: -settingstab.label.currency=Currency: -settingstab.label.rest=Rest: -settingstab.label.rest.activated=activated -settingstab.label.rest.deactivated=deactivated -settingstab.label.trusted.hosts=Trusted Hosts: -settingstab.label.trusted.hosts.info=(one per line) -settingstab.label.language=Language: -settingstab.label.database=Database: -settingstab.button.database.export=Export -settingstab.button.database.import=Import -settingstab.button.database.delete=Delete -settingstab.label.updates=Updates: -settingstab.button.updates.search=Search -settingstab.button.updates.automatic=Automatic search -settingstab.label.updates.current.version=Current Version: -settingstab.label.updates.latest.version=Latest Version: -settingstab.button.save=Save -settingstab.button.server.online=Online Server -settingstab.button.server.local=Local Server - -splashscreen.label.password=Password: - -datepicker.label.month=Month: -datepicker.label.year=Year: -datepicker.button.confirm=Apply - -# ABOUT -about=About {0} -about.roadmap.link=Open Roadmap -about.version=Version: -about.date=Date: -about.author=Author: -about.roadmap=Roadmap: -about.sourcecode=Sourcecode: -about.credits=Credits: \ No newline at end of file diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/colorPick/ColorPickGUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/colorPick/ColorPickGUI.fxml deleted file mode 100644 index 8acf7b57b..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/colorPick/ColorPickGUI.fxml +++ /dev/null @@ -1,116 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.Slider?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane prefHeight="300.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.colorPick.ColorPickController"> - <children> - <HBox layoutX="273.0" layoutY="81.0" spacing="30.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <Label fx:id="labelColor" maxHeight="1.7976931348623157E308" maxWidth="1.7976931348623157E308" HBox.hgrow="ALWAYS" /> - <VBox prefHeight="205.0" prefWidth="313.0"> - <children> - <HBox alignment="CENTER" prefHeight="0.0" prefWidth="299.0"> - <children> - <Label prefHeight="25.0" prefWidth="47.0" text="Rot:"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Slider fx:id="sliderRed" blockIncrement="1.0" max="255.0" prefHeight="14.0" prefWidth="103.0" value="255.0" HBox.hgrow="ALWAYS"> - <HBox.margin> - <Insets right="20.0" /> - </HBox.margin></Slider> - <TextField fx:id="textFieldRed" prefHeight="30.0" prefWidth="45.0" text="255"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </TextField> - </children> - </HBox> - <HBox alignment="CENTER" prefHeight="0.0" prefWidth="299.0"> - <children> - <Label prefHeight="25.0" prefWidth="47.0" text="Grün:"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Slider fx:id="sliderGreen" blockIncrement="1.0" max="255.0" prefHeight="14.0" prefWidth="103.0" value="255.0" HBox.hgrow="ALWAYS"> - <HBox.margin> - <Insets right="20.0" /> - </HBox.margin></Slider> - <TextField fx:id="textFieldGreen" prefHeight="30.0" prefWidth="45.0" text="255"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </TextField> - </children> - </HBox> - <HBox alignment="CENTER" prefHeight="0.0" prefWidth="299.0"> - <children> - <Label prefHeight="25.0" prefWidth="47.0" text="Blau:"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Slider fx:id="sliderBlue" blockIncrement="1.0" max="255.0" prefHeight="14.0" prefWidth="103.0" value="255.0" HBox.hgrow="ALWAYS"> - <HBox.margin> - <Insets right="20.0" /> - </HBox.margin></Slider> - <TextField fx:id="textFieldBlue" prefHeight="30.0" prefWidth="45.0" text="255"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </TextField> - </children> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="0.0" prefWidth="299.0" spacing="25.0"> - <children> - <Label prefHeight="25.0" prefWidth="74.0" text="Hex:"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <TextField fx:id="textFieldHex" prefHeight="30.0" prefWidth="89.0" text="#FFFFFF"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </TextField> - </children> - <VBox.margin> - <Insets top="25.0" /> - </VBox.margin> - </HBox> - <HBox alignment="BOTTOM_CENTER" prefHeight="0.0" prefWidth="299.0" spacing="25.0" VBox.vgrow="ALWAYS"> - <children> - <Button fx:id="buttonCancel" mnemonicParsing="false" onAction="#cancel" text="Abbrechen"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonSave" mnemonicParsing="false" onAction="#save" text="Speichern"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - </children> - <VBox.margin> - <Insets /> - </VBox.margin> - </HBox> - </children> - <HBox.margin> - <Insets /> - </HBox.margin> - </VBox> - </children> - </HBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/commandLine/CommandLineGUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/commandLine/CommandLineGUI.fxml deleted file mode 100644 index 539c299ed..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/commandLine/CommandLineGUI.fxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.TextArea?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.VBox?> - -<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="600.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.commandLine.CommandLineController"> - <children> - <VBox layoutX="14.0" layoutY="14.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <TextArea fx:id="textareaHistory" prefHeight="508.0" prefWidth="572.0" VBox.vgrow="ALWAYS" /> - <TextField fx:id="textfieldInput" prefHeight="46.0" prefWidth="572.0"> - <VBox.margin> - <Insets top="14.0" /> - </VBox.margin> - </TextField> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/commandLine/_en.properties b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/commandLine/_en.properties deleted file mode 100644 index 7aee4c063..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/commandLine/_en.properties +++ /dev/null @@ -1,31 +0,0 @@ -help.list=list - lists all possible commands -help.help=help - shows help for given command\nSYNTAX: help [COMMAND] -help.clear=clear - clears the history -help.shortcuts=shortcuts - lists all available shortcuts - -error.general=An error occurred. -error.unknown.command=Unknown command. Use \"list\" for a list of possible commands. -error.invalid.arguments=Invalid arguments. Use \"help commandname\" for help. -error.invalid.parameter=Invalid parameter {0}.\nUse \"help {1}\" for a detailed list. -error.no.help=Unknown command as parameter. Can't display help. Use \"list\" for a list of possible commands. - -info.shortcuts=[ENTER] - execute command\n[UP] - scroll through recently used commands\n[ESC] - clear input\n[TAB] - autocomplete - -# open -help.open=open - opens files and folders\nSYNTAX: open [PARAMETER]\npossible parameters: settings -open.success=Successfully opened folder {0} - -# delete -help.delete=delete - deletes files\nSYNTAX: delete [PARAMETER]\npossible parameters:\nlog-client\nlog-server -delete.success=Successfully deleted {0} -delete.error.connection=An error occurred while establishing the server connection - -# info -help.info=info - information about client and server \nSYNTAX: info [PARAMETER]\npossible parameters:\client\nserver -info.error.connection=An error occurred while establishing the server connection - -# switch -help.switch=switch - switch betwwen two client settings -switch.new=Second settings file is not present. Copying current settings file... -switch.success=Successfully switched settings -switch.error=An error occurred while switching the settings \ No newline at end of file diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/customAlert/CustomAlert.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/customAlert/CustomAlert.fxml deleted file mode 100644 index 8d850119d..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/customAlert/CustomAlert.fxml +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.image.ImageView?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="90.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <VBox layoutX="14.0" layoutY="14.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <HBox spacing="14.0" VBox.vgrow="ALWAYS"> - <children> - <ImageView fx:id="imageView" fitHeight="45.0" fitWidth="45.0" pickOnBounds="true" preserveRatio="true" /> - <Label fx:id="labelMessage" maxWidth="1.7976931348623157E308" HBox.hgrow="ALWAYS"> - <HBox.margin> - <Insets top="3.0" /> - </HBox.margin></Label> - </children> - </HBox> - <HBox alignment="CENTER_RIGHT"> - <children> - <Button minWidth="75.0" mnemonicParsing="false" onAction="#confirm" prefWidth="75.0" text="%ok" /> - </children> - </HBox> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml deleted file mode 100644 index 25b905501..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/CategoryTab.fxml +++ /dev/null @@ -1,27 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.ListView?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.CategoryController"> - <children> - <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0"> - <children> - <Button fx:id="buttonCategory" mnemonicParsing="false" onAction="#createNewCategory" text="%categorytab.button.category.new"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <ListView fx:id="listView" prefHeight="492.0" prefWidth="772.0" VBox.vgrow="ALWAYS"> - <VBox.margin> - <Insets top="10.0" /> - </VBox.margin> - </ListView> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml deleted file mode 100644 index 3035ad10f..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ChartTab.fxml +++ /dev/null @@ -1,154 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Accordion?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.ComboBox?> -<?import javafx.scene.control.DatePicker?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.RadioButton?> -<?import javafx.scene.control.TitledPane?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.ChartController"> - <children> - <Accordion fx:id="accordion" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0"> - <panes> - <TitledPane animated="false" text="%charttab.titlepane.chart.categories"> - <content> - <VBox spacing="20.0"> - <children> - <HBox alignment="CENTER" prefHeight="8.0" prefWidth="750.0"> - <children> - <HBox alignment="CENTER_RIGHT" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Label text="%charttab.label.start"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <DatePicker fx:id="datePickerStart" /> - </children> - <HBox.margin> - <Insets right="15.0" /> - </HBox.margin> - </HBox> - <HBox alignment="CENTER_LEFT" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Label text="%charttab.label.end"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <DatePicker fx:id="datePickerEnd" /> - <Button fx:id="buttonChartCategoriesShow" mnemonicParsing="false" onAction="#buttonChartCategoriesShow"> - <font> - <Font name="System Bold" size="12.0" /> - </font> - <HBox.margin> - <Insets left="15.0" /> - </HBox.margin> - </Button> - <Button fx:id="buttonChartCategoriesExport" mnemonicParsing="false" onAction="#chartCategoriesExport"> - <font> - <Font name="System Bold" size="12.0" /> - </font> - </Button> - </children> - <HBox.margin> - <Insets left="15.0" /> - </HBox.margin> - </HBox> - </children> - </HBox> - <VBox fx:id="vboxChartCategories" VBox.vgrow="ALWAYS"> - <VBox.margin> - <Insets /> - </VBox.margin> - <padding> - <Insets bottom="20.0" left="20.0" right="20.0" top="20.0" /> - </padding></VBox> - </children> - </VBox> - </content> - <font> - <Font name="System Bold" size="12.0" /> - </font> - </TitledPane> - <TitledPane animated="false" text="%charttab.titlepane.chart.months"> - <font> - <Font name="System Bold" size="12.0" /> - </font> - <content> - <VBox spacing="20.0"> - <children> - <HBox alignment="CENTER_LEFT" prefHeight="8.0" prefWidth="750.0" spacing="50.0"> - <children> - <VBox spacing="15.0"> - <children> - <HBox alignment="CENTER_RIGHT" spacing="10.0"> - <children> - <Label prefHeight="25.0" prefWidth="45.0" text="%charttab.label.start"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <ComboBox fx:id="comboBoxStartMonth" prefHeight="25.0" prefWidth="115.0" /> - <ComboBox fx:id="comboBoxStartYear" prefWidth="100.0" HBox.hgrow="ALWAYS" /> - </children> - </HBox> - <HBox alignment="CENTER_LEFT" spacing="10.0"> - <children> - <Label prefWidth="45.0" text="%charttab.label.end"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <ComboBox fx:id="comboBoxEndMonth" prefWidth="115.0" /> - <ComboBox fx:id="comboBoxEndYear" prefWidth="100.0" /> - </children> - </HBox> - </children> - </VBox> - <HBox alignment="CENTER_LEFT" spacing="15.0" HBox.hgrow="ALWAYS"> - <children> - <RadioButton fx:id="radioButtonBars" mnemonicParsing="false" text="%charttab.checkbox.bars"> - <font> - <Font size="14.0" /> - </font></RadioButton> - <RadioButton fx:id="radioButtonLines" mnemonicParsing="false" text="%charttab.checkbox.lines"> - <font> - <Font size="14.0" /> - </font></RadioButton> - <Button fx:id="buttonChartMonthShow" mnemonicParsing="false" onAction="#chartMonthShow"> - <font> - <Font name="System Bold" size="12.0" /> - </font> - <HBox.margin> - <Insets left="10.0" /> - </HBox.margin> - </Button> - <Button fx:id="buttonChartMonthExport" mnemonicParsing="false" onAction="#chartMonthExport"> - <font> - <Font name="System Bold" size="12.0" /> - </font> - <HBox.margin> - <Insets left="10.0" /> - </HBox.margin> - </Button> - </children> - </HBox> - </children> - </HBox> - <VBox fx:id="vboxChartMonth" prefHeight="200.0" prefWidth="100.0" VBox.vgrow="ALWAYS" /> - </children> - </VBox> - </content> - </TitledPane> - </panes> - </Accordion> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/DatePickerGUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/DatePickerGUI.fxml deleted file mode 100644 index 76cfb1fd9..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/DatePickerGUI.fxml +++ /dev/null @@ -1,67 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.ComboBox?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.Spinner?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane prefHeight="180.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <VBox prefHeight="273.0" prefWidth="465.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <HBox alignment="CENTER" prefHeight="30.0" spacing="25.0" VBox.vgrow="ALWAYS"> - <children> - <VBox alignment="CENTER" maxWidth="1.7976931348623157E308" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Label alignment="CENTER" maxWidth="1.7976931348623157E308" prefHeight="29.0" text="%datepicker.label.month"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <ComboBox fx:id="comboBoxMonth" maxWidth="1.7976931348623157E308" minHeight="29.0" prefHeight="29.0" prefWidth="163.0" /> - </children> - </VBox> - <VBox alignment="CENTER" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Label alignment="CENTER" maxWidth="1.7976931348623157E308" prefHeight="29.0" text="%datepicker.label.year"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <Spinner fx:id="spinnerYear" editable="true" maxWidth="1.7976931348623157E308" minHeight="29.0" minWidth="163.0" prefHeight="29.0" prefWidth="163.0" /> - </children> - </VBox> - </children> - </HBox> - <HBox alignment="CENTER" prefHeight="30.0" prefWidth="465.0"> - <children> - <Button fx:id="buttonCancel" mnemonicParsing="false" onAction="#cancel" text="%cancel"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonConfirm" mnemonicParsing="false" onAction="#confirm" text="%datepicker.button.confirm"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Button> - </children> - <VBox.margin> - <Insets top="10.0" /> - </VBox.margin> - </HBox> - </children> - <padding> - <Insets bottom="10.0" left="10.0" right="10.0" /> - </padding> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml deleted file mode 100644 index 7a4b32843..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ExportChartGUI.fxml +++ /dev/null @@ -1,63 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="200.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <VBox AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <HBox prefHeight="125.0" prefWidth="372.0" spacing="15.0"> - <children> - <VBox alignment="TOP_RIGHT" prefHeight="125.0" prefWidth="99.0" spacing="15.0"> - <children> - <Label text="%export.chart.label.width"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label text="%export.chart.label.height"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label prefHeight="30.0" prefWidth="92.0" text="%export.chart.label.savepath"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - </children> - <HBox.margin> - <Insets /> - </HBox.margin> - </VBox> - <VBox prefHeight="4.0" prefWidth="100.0" spacing="15.0" HBox.hgrow="ALWAYS"> - <children> - <TextField fx:id="textFieldWidth" /> - <TextField fx:id="textFieldHeight" /> - <HBox alignment="CENTER_LEFT" spacing="15.0"> - <children> - <Label fx:id="labelSavePath" maxWidth="1.7976931348623157E308" HBox.hgrow="ALWAYS" /> - <Button fx:id="buttonChooseFile" mnemonicParsing="false" onAction="#chooseFile" text="%export.chart.button.change" /> - </children> - </HBox> - </children> - </VBox> - </children> - </HBox> - <HBox alignment="CENTER" spacing="25.0" VBox.vgrow="ALWAYS"> - <children> - <Button fx:id="buttonCancel" mnemonicParsing="false" onAction="#cancel" text="%cancel" /> - <Button fx:id="buttonExport" mnemonicParsing="false" onAction="#export" text="%export.chart.button.export" /> - </children> - </HBox> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml deleted file mode 100644 index 8e1cf6c95..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/FilterGUI.fxml +++ /dev/null @@ -1,222 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.CheckBox?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.ScrollPane?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane prefHeight="600.0" prefWidth="650.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <ScrollPane fx:id="scrollPane" hbarPolicy="NEVER" layoutX="14.0" layoutY="14.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <content> - <VBox fx:id="vboxMain" prefHeight="567.0" prefWidth="619.0" spacing="15.0"> - <children> - <Label text="%filter.headline"> - <font> - <Font name="System Bold" size="18.0" /> - </font> - <VBox.margin> - <Insets bottom="-5.0" /> - </VBox.margin> - </Label> - <HBox alignment="TOP_CENTER" VBox.vgrow="ALWAYS"> - <children> - <VBox prefHeight="200.0" prefWidth="100.0" spacing="20.0" HBox.hgrow="ALWAYS"> - <children> - <VBox prefHeight="15.0" prefWidth="422.0" spacing="5.0"> - <children> - <Label text="%filter.type"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <HBox prefHeight="10.0" prefWidth="422.0" spacing="25.0"> - <children> - <CheckBox fx:id="checkBoxIncome" mnemonicParsing="false" text="%filter.type.income"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - <CheckBox fx:id="checkBoxPayment" mnemonicParsing="false" text="%filter.type.payment"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - </children> - </HBox> - </children> - <padding> - <Insets right="10.0" /> - </padding> - </VBox> - <Label fx:id="labelSeparatorHorizontalLeft" maxWidth="1.7976931348623157E308" prefHeight="5.0" prefWidth="287.0"> - <font> - <Font size="1.0" /> - </font> - </Label> - <VBox prefHeight="150.0" prefWidth="422.0" spacing="5.0" VBox.vgrow="ALWAYS"> - <children> - <HBox spacing="10.0"> - <children> - <Label maxWidth="1.7976931348623157E308" text="%filter.categories" HBox.hgrow="ALWAYS"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Button fx:id="buttonCategoryAll" mnemonicParsing="false" onAction="#enableAllCategories" text="%filter.categories.button.all"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Button> - <Button fx:id="buttonCategoryNone" mnemonicParsing="false" onAction="#disableAllCategories" text="%filter.categories.button.none"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Button> - </children> - </HBox> - <ScrollPane prefHeight="183.0" prefWidth="297.0" VBox.vgrow="ALWAYS"> - <content> - <VBox fx:id="vboxCategories" spacing="5.0"> - <padding> - <Insets bottom="5.0" left="5.0" right="5.0" top="5.0" /> - </padding></VBox> - </content> - </ScrollPane> - </children> - <padding> - <Insets right="10.0" /> - </padding> - </VBox> - </children> - </VBox> - <Label fx:id="labelSeparator" maxHeight="1.7976931348623157E308" /> - <VBox prefHeight="200.0" prefWidth="100.0" spacing="20.0" HBox.hgrow="ALWAYS"> - <children> - <VBox prefHeight="33.0" prefWidth="422.0" spacing="5.0"> - <children> - <Label text="%filter.repeating"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <HBox spacing="10.0"> - <children> - <CheckBox fx:id="checkBoxNoRepeating" mnemonicParsing="false" text="%filter.repeating.none"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - <CheckBox fx:id="checkBoxMonthlyRepeating" mnemonicParsing="false" text="%filter.repeating.monthday"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - <CheckBox fx:id="checkBoxRepeatEveryXDays" mnemonicParsing="false" text="%filter.repeating.interval"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - </children> - </HBox> - </children> - <padding> - <Insets left="10.0" /> - </padding> - </VBox> - <Label fx:id="labelSeparatorHorizontalRight" maxWidth="1.7976931348623157E308"> - <font> - <Font size="1.0" /> - </font> - </Label> - <VBox prefHeight="150.0" prefWidth="422.0" spacing="5.0" VBox.vgrow="ALWAYS"> - <children> - <HBox spacing="10.0"> - <children> - <Label maxWidth="1.7976931348623157E308" text="%filter.tags" HBox.hgrow="ALWAYS"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Button fx:id="buttonTagsAll" mnemonicParsing="false" onAction="#enableAllTags" text="%filter.categories.button.all"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Button> - <Button fx:id="buttonTagsNone" mnemonicParsing="false" onAction="#disableAllTags" text="%filter.categories.button.none"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Button> - </children> - </HBox> - <ScrollPane prefHeight="85.0" prefWidth="409.0" VBox.vgrow="ALWAYS"> - <content> - <VBox fx:id="vboxTags" spacing="5.0"> - <padding> - <Insets bottom="5.0" left="5.0" right="5.0" top="5.0" /> - </padding></VBox> - </content> - </ScrollPane> - </children> - <padding> - <Insets left="10.0" /> - </padding> - </VBox> - </children> - </VBox> - </children> - </HBox> - <VBox prefHeight="33.0" prefWidth="422.0" spacing="5.0"> - <children> - <Label text="%filter.name"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <TextField fx:id="textFieldSearch" /> - </children> - </VBox> - <HBox alignment="CENTER" prefHeight="30.0" prefWidth="465.0" spacing="10.0"> - <children> - <Button fx:id="buttonCancel" mnemonicParsing="false" onAction="#cancel" text="%cancel"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonReset" mnemonicParsing="false" onAction="#reset" text="%filter.button.reset"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Button> - <Button fx:id="buttonFilter" mnemonicParsing="false" onAction="#filter" text="%filter.button.filter"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Button> - </children> - <VBox.margin> - <Insets top="10.0" /> - </VBox.margin> - </HBox> - </children> - <padding> - <Insets bottom="15.0" /> - </padding> - </VBox> - </content> - </ScrollPane> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml deleted file mode 100644 index 6cde2cc3f..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/GUI.fxml +++ /dev/null @@ -1,55 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.Tab?> -<?import javafx.scene.control.TabPane?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.Region?> -<?import javafx.scene.layout.StackPane?> -<?import javafx.scene.layout.VBox?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="15.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="14.0"> - <children> - <HBox alignment="CENTER" prefWidth="772.0" spacing="15.0"> - <children> - <Region prefHeight="0.0" prefWidth="200.0" HBox.hgrow="ALWAYS"> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Region> - <Button fx:id="buttonLeft" mnemonicParsing="false" onAction="#previousMonth" /> - <Button fx:id="buttonDate" alignment="CENTER" contentDisplay="CENTER" mnemonicParsing="false" onAction="#openDatePicker" prefHeight="25.0" prefWidth="280.0" textAlignment="CENTER" HBox.hgrow="ALWAYS" /> - <Button fx:id="buttonRight" mnemonicParsing="false" onAction="#nextMonth" /> - <Button fx:id="buttonToday" mnemonicParsing="false" onAction="#today" /> - <Region prefHeight="0.0" prefWidth="200.0" HBox.hgrow="ALWAYS" /> - <Button fx:id="buttonAbout" alignment="CENTER" mnemonicParsing="false" onAction="#about"> - <HBox.margin> - <Insets right="10.0" /> - </HBox.margin> - </Button> - </children> - </HBox> - <StackPane alignment="BOTTOM_CENTER" VBox.vgrow="ALWAYS"> - <children> - <TabPane fx:id="tabPane" prefHeight="200.0" prefWidth="403.0" tabClosingPolicy="UNAVAILABLE"> - <tabs> - <Tab fx:id="tabHome" closable="false" text="%gui.tab.home" /> - <Tab fx:id="tabPayments" closable="false" text="%gui.tab.payments" /> - <Tab fx:id="tabCategories" closable="false" text="%gui.tab.categories" /> - <Tab fx:id="tabCharts" closable="false" text="%gui.tab.charts" /> - <Tab fx:id="tabReports" closable="false" text="%gui.tab.report" /> - <Tab fx:id="tabSettings" closable="false" text="%gui.tab.settings" /> - </tabs> - </TabPane> - <Label fx:id="labelNotification" alignment="CENTER" maxWidth="1.7976931348623157E308" /> - </children> - </StackPane> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml deleted file mode 100644 index ba134717f..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/HomeTab.fxml +++ /dev/null @@ -1,42 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.ListView?> -<?import javafx.scene.control.ProgressBar?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.HomeController"> - <children> - <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="15.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <Label fx:id="labelBudget" text="0,00 €"> - <font> - <Font name="System Bold" size="55.0" /> - </font> - </Label> - <Label fx:id="labelStartBudget"> - <font> - <Font name="System Bold" size="18.0" /> - </font> - </Label> - <ProgressBar fx:id="progressBar" prefHeight="18.0" prefWidth="380.0" progress="0.68" /> - <Label text="%hometab.categorybudgets"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="25.0" /> - </VBox.margin> - </Label> - <ListView fx:id="listView" prefHeight="200.0" prefWidth="200.0" VBox.vgrow="ALWAYS"> - <VBox.margin> - <Insets /> - </VBox.margin> - </ListView> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml deleted file mode 100644 index 822227df8..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/Modal.fxml +++ /dev/null @@ -1,22 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.ProgressIndicator?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="100.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.ModalController"> - <children> - <HBox alignment="CENTER_LEFT" spacing="10.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <Label fx:id="labelMessage" maxWidth="1.7976931348623157E308" HBox.hgrow="ALWAYS"> - <font> - <Font size="15.0" /> - </font> - </Label> - <ProgressIndicator prefHeight="72.0" prefWidth="34.0" /> - </children> - </HBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml deleted file mode 100644 index 3661f5a43..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/NewCategoryGUI.fxml +++ /dev/null @@ -1,79 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane prefHeight="180.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <VBox prefHeight="273.0" prefWidth="465.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <HBox alignment="CENTER_LEFT" prefHeight="30.0" prefWidth="465.0"> - <children> - <VBox> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%category.new.label.name"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <Label prefHeight="29.0" prefWidth="125.0" text="%category.new.label.max.characters"> - <font> - <Font size="11.0" /> - </font> - </Label> - </children> - </VBox> - <TextField fx:id="textFieldName" prefHeight="29.0" HBox.hgrow="ALWAYS"> - <font> - <Font size="13.0" /> - </font> - <HBox.margin> - <Insets /> - </HBox.margin> - </TextField> - </children> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="30.0" prefWidth="465.0"> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%category.new.label.color"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <Button fx:id="buttonColor" maxWidth="1.7976931348623157E308" mnemonicParsing="false" prefHeight="30.0"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - </children> - </HBox> - <HBox alignment="CENTER" prefHeight="30.0" prefWidth="465.0"> - <children> - <Button fx:id="buttonCancel" mnemonicParsing="false" onAction="#cancel" text="%cancel"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonSave" mnemonicParsing="false" onAction="#save" text="%category.new.button.save"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Button> - </children> - <VBox.margin> - <Insets top="10.0" /> - </VBox.margin> - </HBox> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml deleted file mode 100644 index fc79d7620..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/NewPaymentGUI.fxml +++ /dev/null @@ -1,227 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.CheckBox?> -<?import javafx.scene.control.ComboBox?> -<?import javafx.scene.control.DatePicker?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.RadioButton?> -<?import javafx.scene.control.ScrollPane?> -<?import javafx.scene.control.Separator?> -<?import javafx.scene.control.Spinner?> -<?import javafx.scene.control.TextArea?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane prefHeight="600.0" prefWidth="450.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <ScrollPane fx:id="scrollPane" hbarPolicy="NEVER" layoutX="14.0" layoutY="14.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <content> - <VBox fx:id="vboxContent" prefHeight="565.0" prefWidth="414.0" spacing="14.0"> - <children> - <HBox alignment="CENTER_LEFT" prefHeight="30.0" prefWidth="465.0"> - <children> - <VBox> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.name"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.max.characters.name"> - <font> - <Font size="11.0" /> - </font> - </Label> - </children> - </VBox> - <TextField fx:id="textFieldName" prefHeight="29.0" HBox.hgrow="ALWAYS"> - <font> - <Font size="13.0" /> - </font> - <HBox.margin> - <Insets /> - </HBox.margin> - </TextField> - </children> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="30.0" prefWidth="465.0"> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.amount"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <TextField fx:id="textFieldAmount" prefHeight="29.0" HBox.hgrow="ALWAYS"> - <font> - <Font size="13.0" /> - </font> - <HBox.margin> - <Insets /> - </HBox.margin> - </TextField> - </children> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="30.0" prefWidth="465.0"> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.category"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <ComboBox fx:id="comboBoxCategory" maxWidth="1.7976931348623157E308" prefHeight="30.0" HBox.hgrow="ALWAYS" /> - </children> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="30.0" prefWidth="465.0"> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.date"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <DatePicker fx:id="datePicker" maxWidth="1.7976931348623157E308" prefHeight="29.0" HBox.hgrow="ALWAYS" /> - </children> - </HBox> - <HBox alignment="CENTER_LEFT" maxHeight="1.7976931348623157E308" prefWidth="422.0" VBox.vgrow="ALWAYS"> - <children> - <VBox alignment="CENTER_LEFT"> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.description"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.max.characters.description"> - <font> - <Font size="11.0" /> - </font> - </Label> - </children> - </VBox> - <TextArea fx:id="textArea" maxWidth="1.7976931348623157E308" prefHeight="37.0" prefWidth="240.0" HBox.hgrow="ALWAYS" /> - </children> - </HBox> - <HBox prefHeight="30.0" prefWidth="465.0"> - <children> - <VBox> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.tags"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <Button fx:id="buttonTagsHelp" mnemonicParsing="false" onAction="#showTagsHelp" /> - </children> - </VBox> - <HBox fx:id="hboxTags" alignment="CENTER_LEFT" HBox.hgrow="ALWAYS" /> - </children> - </HBox> - <VBox prefHeight="214.0" prefWidth="422.0" spacing="20.0"> - <children> - <HBox alignment="CENTER"> - <children> - <CheckBox fx:id="checkBoxRepeat" mnemonicParsing="false" /> - <Label alignment="CENTER" maxWidth="1.7976931348623157E308" prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.repeating"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - </children> - </HBox> - <HBox alignment="TOP_CENTER" prefWidth="422.0"> - <children> - <VBox alignment="TOP_CENTER" spacing="5.0" HBox.hgrow="ALWAYS"> - <children> - <RadioButton fx:id="radioButtonPeriod" mnemonicParsing="false"> - <VBox.margin> - <Insets bottom="10.0" /> - </VBox.margin> - </RadioButton> - <Label fx:id="labelText1" prefHeight="25.0" prefWidth="40.0" text="%payment.new.label.repeating.all"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <Spinner fx:id="spinnerRepeatingPeriod" prefHeight="25.0" prefWidth="90.0" /> - <Label fx:id="labelText2" prefHeight="25.0" prefWidth="36.0" text="%payment.new.label.repeating.days"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - </children> - <padding> - <Insets left="15.0" right="15.0" /> - </padding> - </VBox> - <Separator orientation="VERTICAL" prefHeight="200.0" /> - <VBox alignment="TOP_CENTER" spacing="5.0" HBox.hgrow="ALWAYS"> - <children> - <RadioButton fx:id="radioButtonDay" mnemonicParsing="false"> - <VBox.margin> - <Insets bottom="10.0" /> - </VBox.margin> - </RadioButton> - <Label fx:id="labelText3" prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.repeating.monthday"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <ComboBox fx:id="comboBoxRepeatingDay" prefHeight="25.0" prefWidth="90.0" /> - <Label prefHeight="25.0" prefWidth="36.0"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - </children> - <padding> - <Insets left="15.0" right="15.0" /> - </padding> - </VBox> - </children> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="30.0" prefWidth="465.0"> - <children> - <Label prefHeight="29.0" prefWidth="125.0" text="%payment.new.label.enddate"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <CheckBox fx:id="checkBoxEndDate" mnemonicParsing="false" /> - <DatePicker fx:id="datePickerEnddate" maxWidth="1.7976931348623157E308" prefHeight="29.0" HBox.hgrow="ALWAYS" /> - </children> - </HBox> - </children> - </VBox> - <HBox alignment="CENTER" prefHeight="30.0" prefWidth="465.0"> - <children> - <Button fx:id="buttonCancel" mnemonicParsing="false" onAction="#cancel" text="%cancel"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonSave" mnemonicParsing="false" onAction="#save" text="%payment.new.button.save"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Button> - </children> - <VBox.margin> - <Insets top="5.0" /> - </VBox.margin> - </HBox> - </children> - <padding> - <Insets bottom="5.0" /> - </padding> - </VBox> - </content> - </ScrollPane> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml deleted file mode 100644 index 43cbe9ae7..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/PaymentTab.fxml +++ /dev/null @@ -1,101 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.ListView?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.Region?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.PaymentController"> - <children> - <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0"> - <children> - <HBox prefHeight="11.0" prefWidth="772.0"> - <children> - <Button fx:id="buttonNewIncome" mnemonicParsing="false" onAction="#newIncome" text="%paymenttab.button.new.income"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Region HBox.hgrow="ALWAYS" /> - <VBox alignment="CENTER" spacing="10.0"> - <children> - <Button fx:id="buttonFilter" mnemonicParsing="false" onAction="#filter" text="%paymenttab.button.filter"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Label fx:id="labelFilterActive" text="%paymenttab.label.filter.active"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Label> - </children> - </VBox> - <Region HBox.hgrow="ALWAYS" /> - <Button fx:id="buttonSearch" mnemonicParsing="false" onAction="#search" text="%paymenttab.button.search"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <HBox.margin> - <Insets /> - </HBox.margin> - </Button> - <Region HBox.hgrow="ALWAYS" /> - <Button fx:id="buttonNewPayment" mnemonicParsing="false" onAction="#newPayment" text="%paymenttab.button.new.payment"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - </children> - <VBox.margin> - <Insets /> - </VBox.margin> - </HBox> - <HBox alignment="CENTER" prefHeight="16.0" prefWidth="772.0"> - <children> - <Label fx:id="labelIncome" prefHeight="27.0" text="%paymenttab.label.incomes"> - <font> - <Font name="System Bold" size="18.0" /> - </font> - </Label> - <Label fx:id="labelIncomes" maxWidth="1.7976931348623157E308" prefHeight="27.0" text="0,00 €"> - <font> - <Font name="System Bold" size="18.0" /> - </font> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Label> - <Region prefHeight="27.0" HBox.hgrow="ALWAYS" /> - <Label fx:id="labelPayment" prefHeight="27.0" text="%paymenttab.label.payments"> - <font> - <Font name="System Bold" size="18.0" /> - </font> - </Label> - <Label fx:id="labelPayments" maxWidth="1.7976931348623157E308" prefHeight="27.0" text="0,00 €"> - <font> - <Font name="System Bold" size="18.0" /> - </font> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Label> - </children> - <VBox.margin> - <Insets top="10.0" /> - </VBox.margin> - </HBox> - <ListView fx:id="listView" prefHeight="492.0" prefWidth="772.0" VBox.vgrow="ALWAYS"> - <VBox.margin> - <Insets /> - </VBox.margin> - </ListView> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml deleted file mode 100644 index 2e84bb459..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/ReportTab.fxml +++ /dev/null @@ -1,75 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.CheckBox?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.TableView?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.ReportController"> - <children> - <VBox alignment="TOP_CENTER" layoutY="24.0" prefHeight="562.0" prefWidth="772.0" spacing="20.0" AnchorPane.bottomAnchor="35.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="25.0"> - <children> - <HBox alignment="CENTER" prefHeight="11.0" prefWidth="772.0"> - <children> - <VBox alignment="CENTER" spacing="10.0"> - <children> - <Button fx:id="buttonFilter" mnemonicParsing="false" onAction="#filter" text="%paymenttab.button.filter"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Label fx:id="labelFilterActive" text="%paymenttab.label.filter.active"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Label> - </children> - </VBox> - </children> - <VBox.margin> - <Insets /> - </VBox.margin> - </HBox> - <HBox alignment="CENTER" prefHeight="11.0" prefWidth="772.0"> - <children> - <VBox spacing="10.0"> - <children> - <CheckBox fx:id="checkBoxIncludeBudget" mnemonicParsing="false" text="%reporttab.checkbox.include.budget" /> - <CheckBox fx:id="checkBoxSplitTable" mnemonicParsing="false" text="%reporttab.checkbox.split.tables" /> - <CheckBox fx:id="checkBoxIncludeCategoryBudgets" mnemonicParsing="false" text="%reporttab.checkbox.inclue.categorybudgets" /> - </children> - </VBox> - </children> - <VBox.margin> - <Insets bottom="10.0" /> - </VBox.margin> - </HBox> - <TableView fx:id="tableView" prefHeight="270.0" prefWidth="772.0" VBox.vgrow="ALWAYS"> - <columnResizePolicy> - <TableView fx:constant="CONSTRAINED_RESIZE_POLICY" /> - </columnResizePolicy></TableView> - <HBox alignment="CENTER" prefHeight="11.0" prefWidth="772.0"> - <children> - <VBox alignment="CENTER" spacing="10.0"> - <children> - <Button fx:id="buttonGenerate" mnemonicParsing="false" onAction="#generate" text="%reporttab.button.generate.report"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - </children> - </VBox> - </children> - <VBox.margin> - <Insets top="15.0" /> - </VBox.margin> - </HBox> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SearchGUI.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SearchGUI.fxml deleted file mode 100644 index bc66cd164..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SearchGUI.fxml +++ /dev/null @@ -1,113 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.CheckBox?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.ListView?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane prefHeight="600.0" prefWidth="500.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <VBox prefHeight="273.0" prefWidth="465.0" spacing="20.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <Label text="%search.headline"> - <font> - <Font name="System Bold" size="18.0" /> - </font> - </Label> - <VBox spacing="15.0"> - <children> - <HBox spacing="25.0"> - <children> - <VBox spacing="20.0" HBox.hgrow="ALWAYS"> - <children> - <TextField fx:id="textFieldSearch" /> - <HBox spacing="15.0"> - <children> - <Label text="%search.by"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <CheckBox fx:id="checkBoxName" mnemonicParsing="false" text="%search.by.name"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - <CheckBox fx:id="checkBoxDescription" mnemonicParsing="false" text="%search.by.description"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - <CheckBox fx:id="checkBoxCategoryName" mnemonicParsing="false" text="%search.by.category.name"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - <CheckBox fx:id="checkBoxTags" mnemonicParsing="false" text="%search.by.tags"> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - </children> - </HBox> - </children> - </VBox> - </children> - </HBox> - <Label fx:id="labelSeparator" maxWidth="1.7976931348623157E308"> - <font> - <Font size="1.0" /> - </font> - </Label> - <HBox alignment="CENTER_LEFT" prefHeight="32.0" prefWidth="377.0" spacing="10.0"> - <children> - <CheckBox fx:id="checkBoxSearchByAmount" mnemonicParsing="false" text="%search.by.amount"> - <HBox.margin> - <Insets right="25.0" /> - </HBox.margin> - <font> - <Font size="14.0" /> - </font> - </CheckBox> - <HBox fx:id="hboxSearchByAmount" alignment="CENTER" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <TextField fx:id="textFieldAmountMin" prefHeight="25.0" prefWidth="55.0" /> - <HBox fx:id="hboxRangeSlider" prefHeight="32.0" prefWidth="123.0" HBox.hgrow="ALWAYS" /> - <TextField fx:id="textFieldAmountMax" prefHeight="25.0" prefWidth="55.0" /> - </children> - </HBox> - </children> - </HBox> - </children> - </VBox> - <ListView fx:id="listView" prefHeight="200.0" prefWidth="200.0" VBox.vgrow="ALWAYS" /> - <HBox alignment="CENTER" prefHeight="30.0" prefWidth="465.0" spacing="10.0"> - <children> - <Button fx:id="buttonCancel" mnemonicParsing="false" onAction="#cancel" text="%cancel"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonSearch" mnemonicParsing="false" onAction="#search" text="%search.button.search"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <HBox.margin> - <Insets left="25.0" /> - </HBox.margin> - </Button> - </children> - <VBox.margin> - <Insets top="10.0" /> - </VBox.margin> - </HBox> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml deleted file mode 100644 index effda26ce..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabLocalServer.fxml +++ /dev/null @@ -1,220 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.CheckBox?> -<?import javafx.scene.control.ComboBox?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.RadioButton?> -<?import javafx.scene.control.ScrollPane?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.control.ToggleButton?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.Region?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.settings.LocalServerSettingsController"> - <children> - <VBox alignment="TOP_CENTER" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <ScrollPane fx:id="scrollPane" hbarPolicy="NEVER" VBox.vgrow="ALWAYS"> - <content> - <VBox spacing="14.0"> - <children> - <HBox alignment="TOP_CENTER"> - <children> - <ToggleButton fx:id="toggleButtonOnline" mnemonicParsing="false" text="%settingstab.button.server.online" /> - <ToggleButton fx:id="toggleButtonLocal" mnemonicParsing="false" text="%settingstab.button.server.local" /> - </children> - </HBox> - <HBox fx:id="hboxSettings" prefHeight="359.0" prefWidth="722.0"> - <children> - <VBox alignment="CENTER_RIGHT" prefHeight="25.0" prefWidth="158.0" spacing="15.0"> - <children> - <Label fx:id="labelStatus" prefHeight="25.0" text="%settingstab.label.status"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label fx:id="labelClientSecret" prefHeight="25.0" text="%settingstab.label.secret.client"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label fx:id="labelCurrency" prefHeight="25.0" text="%settingstab.label.currency"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label fx:id="labelSecret11" prefHeight="25.0" text="%settingstab.label.rest"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label fx:id="labelSecret1112" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" prefWidth="158.0" text="%settingstab.label.language" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret11122" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" prefWidth="158.0" text="%settingstab.label.database" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="5.0" /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret111221" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" prefWidth="158.0" text="%settingstab.label.updates" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="5.0" /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret11121" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" prefWidth="158.0" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="15.0" /> - </VBox.margin> - </Label> - <Region prefHeight="19.0" prefWidth="158.0" VBox.vgrow="ALWAYS" /> - </children> - <HBox.margin> - <Insets right="25.0" /> - </HBox.margin> - <padding> - <Insets top="3.0" /> - </padding> - </VBox> - <VBox alignment="CENTER_LEFT" prefHeight="200.0" prefWidth="100.0" spacing="15.0" HBox.hgrow="ALWAYS"> - <children> - <HBox alignment="CENTER_LEFT" spacing="10.0"> - <children> - <Label fx:id="labelLocalServerStatus" prefHeight="25.0"> - <font> - <Font size="14.0" /> - </font> - </Label> - <Button fx:id="buttonLocalServerAction" mnemonicParsing="false"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - </children> - </HBox> - <TextField fx:id="textFieldClientSecret" /> - <TextField fx:id="textFieldCurrency" /> - <HBox alignment="CENTER" prefHeight="11.0" prefWidth="539.0" spacing="30.0"> - <children> - <RadioButton fx:id="radioButtonRestActivated" maxWidth="1.7976931348623157E308" mnemonicParsing="false" text="%settingstab.label.rest.activated"> - <font> - <Font size="14.0" /> - </font> - <HBox.margin> - <Insets /> - </HBox.margin> - </RadioButton> - <RadioButton fx:id="radioButtonRestDeactivated" maxWidth="1.7976931348623157E308" mnemonicParsing="false" text="%settingstab.label.rest.deactivated" HBox.hgrow="ALWAYS"> - <font> - <Font size="14.0" /> - </font> - </RadioButton> - </children> - </HBox> - <ComboBox fx:id="comboBoxLanguage" maxWidth="1.7976931348623157E308" /> - <HBox alignment="CENTER_LEFT" prefHeight="11.0" prefWidth="539.0" spacing="30.0"> - <children> - <Button fx:id="buttonExportDB" minWidth="100.0" mnemonicParsing="false" onAction="#exportDB" text="%settingstab.button.database.export"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonImportDB" minWidth="100.0" mnemonicParsing="false" onAction="#importDB" text="%settingstab.button.database.import"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonDeleteDB" minWidth="100.0" mnemonicParsing="false" onAction="#deleteDB" text="%settingstab.button.database.delete"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - </children> - <VBox.margin> - <Insets /> - </VBox.margin> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="100.0" prefWidth="200.0" spacing="20.0"> - <children> - <VBox spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Button fx:id="buttonSearchUpdates" minWidth="100.0" mnemonicParsing="false" onAction="#checkForUpdates" text="%settingstab.button.updates.search" /> - <CheckBox fx:id="checkboxEnableAutoUpdate" mnemonicParsing="false" text="%settingstab.button.updates.automatic"> - <font> - <Font size="13.0" /> - </font> - </CheckBox> - </children> - </VBox> - <VBox prefWidth="100.0" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Label contentDisplay="CENTER" minHeight="30.0" text="%settingstab.label.updates.current.version" textAlignment="CENTER" wrapText="true"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Label> - <Label alignment="TOP_LEFT" contentDisplay="CENTER" minHeight="25.0" text="%settingstab.label.updates.latest.version" textAlignment="CENTER" wrapText="true"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - <VBox.margin> - <Insets /> - </VBox.margin> - </Label> - </children> - </VBox> - <VBox prefWidth="100.0" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Label fx:id="labelCurrentVersion" contentDisplay="CENTER" minHeight="30.0" textAlignment="CENTER" wrapText="true"> - <font> - <Font size="13.0" /> - </font> - </Label> - <Label fx:id="labelLatestVersion" alignment="TOP_LEFT" contentDisplay="CENTER" textAlignment="CENTER" wrapText="true"> - <font> - <Font size="13.0" /> - </font> - </Label> - </children> - </VBox> - </children> - </HBox> - <Button fx:id="buttonSave" minWidth="100.0" mnemonicParsing="false" onAction="#save" text="%settingstab.button.save"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <VBox.margin> - <Insets top="15.0" /> - </VBox.margin> - </Button> - <Region prefWidth="158.0" VBox.vgrow="ALWAYS" /> - </children> - </VBox> - </children> - </HBox> - </children> - </VBox> - </content> - </ScrollPane> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml deleted file mode 100644 index 69d8a1e12..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SettingsTabOnlineServer.fxml +++ /dev/null @@ -1,235 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.CheckBox?> -<?import javafx.scene.control.ComboBox?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.RadioButton?> -<?import javafx.scene.control.ScrollPane?> -<?import javafx.scene.control.TextArea?> -<?import javafx.scene.control.TextField?> -<?import javafx.scene.control.ToggleButton?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.Region?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="600.0" prefWidth="800.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.deadlocker8.budgetmasterclient.ui.controller.settings.OnlineServerSettingsController"> - <children> - <VBox alignment="TOP_CENTER" prefHeight="562.0" prefWidth="772.0" spacing="25.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <ScrollPane fx:id="scrollPane" hbarPolicy="NEVER" VBox.vgrow="ALWAYS"> - <content> - <VBox spacing="14.0"> - <children> - <HBox alignment="TOP_CENTER"> - <children> - <ToggleButton fx:id="toggleButtonOnline" mnemonicParsing="false" text="%settingstab.button.server.online" /> - <ToggleButton fx:id="toggleButtonLocal" mnemonicParsing="false" text="%settingstab.button.server.local" /> - </children> - </HBox> - <HBox fx:id="hboxSettings" prefHeight="359.0" prefWidth="722.0"> - <children> - <VBox alignment="CENTER_RIGHT" prefHeight="25.0" prefWidth="158.0" spacing="15.0"> - <children> - <Label fx:id="labelClientSecret" prefHeight="25.0" text="%settingstab.label.secret.client"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label fx:id="labelURL" prefHeight="25.0" text="%settingstab.label.url"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret" prefHeight="25.0" text="%settingstab.label.secret.server"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label fx:id="labelCurrency" prefHeight="25.0" text="%settingstab.label.currency"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label fx:id="labelSecret11" prefHeight="25.0" text="%settingstab.label.rest"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <Label fx:id="labelSecret111" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" minHeight="60.0" prefWidth="158.0" text="%settingstab.label.trusted.hosts" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="-7.0" /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret1111" alignment="CENTER" contentDisplay="CENTER" maxHeight="-Infinity" text="%settingstab.label.trusted.hosts.info" textAlignment="CENTER" wrapText="true" VBox.vgrow="ALWAYS"> - <font> - <Font size="14.0" /> - </font> - <VBox.margin> - <Insets top="-20.0" /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret1112" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" prefWidth="158.0" text="%settingstab.label.language" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="50.0" /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret11122" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" prefWidth="158.0" text="%settingstab.label.database" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="5.0" /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret111221" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" prefWidth="158.0" text="%settingstab.label.updates" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="5.0" /> - </VBox.margin> - </Label> - <Label fx:id="labelSecret11121" alignment="CENTER_RIGHT" contentDisplay="RIGHT" maxHeight="-Infinity" prefWidth="158.0" textAlignment="RIGHT" wrapText="true"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - <VBox.margin> - <Insets top="15.0" /> - </VBox.margin> - </Label> - <Region prefHeight="19.0" prefWidth="158.0" VBox.vgrow="ALWAYS" /> - </children> - <HBox.margin> - <Insets right="25.0" /> - </HBox.margin> - </VBox> - <VBox alignment="CENTER_LEFT" prefHeight="200.0" prefWidth="100.0" spacing="15.0" HBox.hgrow="ALWAYS"> - <children> - <TextField fx:id="textFieldClientSecret" /> - <TextField fx:id="textFieldURL" /> - <TextField fx:id="textFieldSecret" /> - <TextField fx:id="textFieldCurrency" /> - <HBox alignment="CENTER" prefHeight="11.0" prefWidth="539.0" spacing="30.0"> - <children> - <RadioButton fx:id="radioButtonRestActivated" maxWidth="1.7976931348623157E308" mnemonicParsing="false" text="%settingstab.label.rest.activated"> - <font> - <Font size="14.0" /> - </font> - <HBox.margin> - <Insets /> - </HBox.margin> - </RadioButton> - <RadioButton fx:id="radioButtonRestDeactivated" maxWidth="1.7976931348623157E308" mnemonicParsing="false" text="%settingstab.label.rest.deactivated" HBox.hgrow="ALWAYS"> - <font> - <Font size="14.0" /> - </font> - </RadioButton> - </children> - </HBox> - <TextArea fx:id="textAreaTrustedHosts" maxHeight="122.0" minHeight="122.0" prefHeight="122.0" prefWidth="539.0"> - <VBox.margin> - <Insets /> - </VBox.margin> - </TextArea> - <ComboBox fx:id="comboBoxLanguage" maxWidth="1.7976931348623157E308" /> - <HBox alignment="CENTER_LEFT" prefHeight="11.0" prefWidth="539.0" spacing="30.0"> - <children> - <Button fx:id="buttonExportDB" minWidth="100.0" mnemonicParsing="false" onAction="#exportDB" text="%settingstab.button.database.export"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonImportDB" minWidth="100.0" mnemonicParsing="false" onAction="#importDB" text="%settingstab.button.database.import"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - <Button fx:id="buttonDeleteDB" minWidth="100.0" mnemonicParsing="false" onAction="#deleteDB" text="%settingstab.button.database.delete"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Button> - </children> - <VBox.margin> - <Insets /> - </VBox.margin> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="100.0" prefWidth="200.0" spacing="20.0"> - <children> - <VBox spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Button fx:id="buttonSearchUpdates" minWidth="100.0" mnemonicParsing="false" onAction="#checkForUpdates" text="%settingstab.button.updates.search" /> - <CheckBox fx:id="checkboxEnableAutoUpdate" mnemonicParsing="false" text="%settingstab.button.updates.automatic"> - <font> - <Font size="13.0" /> - </font> - </CheckBox> - </children> - </VBox> - <VBox prefWidth="100.0" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Label contentDisplay="CENTER" minHeight="30.0" text="%settingstab.label.updates.current.version" textAlignment="CENTER" wrapText="true"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - </Label> - <Label alignment="TOP_LEFT" contentDisplay="CENTER" text="%settingstab.label.updates.latest.version" textAlignment="CENTER" wrapText="true"> - <font> - <Font name="System Bold" size="13.0" /> - </font> - <VBox.margin> - <Insets /> - </VBox.margin> - </Label> - </children> - </VBox> - <VBox prefWidth="100.0" spacing="10.0" HBox.hgrow="ALWAYS"> - <children> - <Label fx:id="labelCurrentVersion" contentDisplay="CENTER" minHeight="30.0" textAlignment="CENTER" wrapText="true"> - <font> - <Font size="13.0" /> - </font> - </Label> - <Label fx:id="labelLatestVersion" alignment="TOP_LEFT" contentDisplay="CENTER" textAlignment="CENTER" wrapText="true"> - <font> - <Font size="13.0" /> - </font> - </Label> - </children> - </VBox> - </children> - </HBox> - <Button fx:id="buttonSave" minWidth="100.0" mnemonicParsing="false" onAction="#save" text="%settingstab.button.save"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - <VBox.margin> - <Insets top="15.0" /> - </VBox.margin> - </Button> - <Region prefWidth="158.0" VBox.vgrow="ALWAYS" /> - </children> - </VBox> - </children> - </HBox> - </children> - </VBox> - </content> - </ScrollPane> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml deleted file mode 100644 index 398b06841..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/fxml/SplashScreen.fxml +++ /dev/null @@ -1,53 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<?import javafx.geometry.Insets?> -<?import javafx.scene.control.Button?> -<?import javafx.scene.control.Label?> -<?import javafx.scene.control.PasswordField?> -<?import javafx.scene.image.ImageView?> -<?import javafx.scene.layout.AnchorPane?> -<?import javafx.scene.layout.HBox?> -<?import javafx.scene.layout.VBox?> -<?import javafx.scene.text.Font?> - -<AnchorPane fx:id="anchorPaneMain" prefHeight="230.0" prefWidth="400.0" xmlns="http://javafx.com/javafx/8.0.111" xmlns:fx="http://javafx.com/fxml/1"> - <children> - <VBox layoutX="14.0" layoutY="14.0" spacing="10.0" AnchorPane.bottomAnchor="14.0" AnchorPane.leftAnchor="14.0" AnchorPane.rightAnchor="14.0" AnchorPane.topAnchor="14.0"> - <children> - <HBox alignment="CENTER_LEFT" spacing="25.0"> - <children> - <ImageView fx:id="imageViewLogo" fitHeight="120.0" fitWidth="120.0" pickOnBounds="true" preserveRatio="true"> - <HBox.margin> - <Insets left="15.0" /> - </HBox.margin></ImageView> - <VBox alignment="CENTER" HBox.hgrow="ALWAYS"> - <children> - <Label alignment="CENTER" maxWidth="1.7976931348623157E308" text="%app.name"> - <font> - <Font name="System Bold" size="25.0" /> - </font> - </Label> - <Label fx:id="labelVersion" alignment="CENTER" maxWidth="1.7976931348623157E308" text="v1.0.0"> - <font> - <Font size="16.0" /> - </font> - </Label> - </children> - </VBox> - </children> - </HBox> - <HBox alignment="CENTER" prefHeight="100.0" prefWidth="200.0" spacing="20.0"> - <children> - <Label text="%splashscreen.label.password"> - <font> - <Font name="System Bold" size="16.0" /> - </font> - </Label> - <PasswordField fx:id="textFieldPassword" prefHeight="28.0" prefWidth="159.0" /> - <Button fx:id="buttonLogin" maxHeight="-Infinity" maxWidth="-Infinity" mnemonicParsing="false" onAction="#login" prefHeight="28.0" prefWidth="28.0" /> - </children> - </HBox> - </children> - </VBox> - </children> -</AnchorPane> diff --git a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/style.css b/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/style.css deleted file mode 100644 index f0c0c1e00..000000000 --- a/BudgetMasterClient/src/main/resources/de/deadlocker8/budgetmaster/ui/style.css +++ /dev/null @@ -1,98 +0,0 @@ -.greylabel{ - -fx-text-fill: #212121; -} - -.tab-header-background { - -fx-background-color: transparent; -} -.tab-pane{ - -fx-tab-min-width: 100px; -} - -.tab{ - -fx-background-insets: 0 1 0 1,0,0; - -fx-padding: 5 0 5 0; -} -.tab-pane .tab{ - -fx-font-weight: bold; - -fx-background-color: #A5A5A5; -} - -.tab .tab-label { - -fx-alignment: CENTER; - -fx-font-size: 12px; - -fx-font-weight: bold; -} -.tab-pane .tab:selected -{ - -fx-background-color: #F4F4F4; -} - -.tab:selected .tab-label { - -fx-alignment: CENTER; -} - -.tab-pane > .tab-header-area > .headers-region > .tab { - -fx-background-radius: 0, 0, 0; -} - -.tab-pane:focused > .tab-header-area > .headers-region > .tab:selected .focus-indicator { - -fx-border-radius: 0, 0; - -fx-focus-color: transparent; - -fx-border-color: transparent; -} - - - -.progress-bar { - -fx-indeterminate-bar-length: 60; - -fx-indeterminate-bar-escape: true; - -fx-indeterminate-bar-flip: true; - -fx-indeterminate-bar-animation-time: 2; -} - -.progress-bar > .bar { - -fx-background-color: -fx-accent; - -fx-background-insets: 0 0 0 0; - -fx-background-radius: 0; - -fx-padding: 0.75em; -} - -.progress-bar > .track { - -fx-background-color: #CCCCCC; - -fx-background-insets: 0, 0 0 0 0, 0 0 0 0; - -fx-background-radius: 0, 0, 0; -} - - -.color-view-item { - -fx-stroke: black; - -fx-stroke-width: 2; - -fx-arc-height: 7.5; - -fx-arc-width: 7.5; - } - - .color-view-item:hover { - -fx-stroke: DARKRED; - } - - .color-view-item:pressed { - -fx-stroke: RED; - } - - .picker-color-rect { - -fx-opacity: 0; - } - - .color-picker .arrow-button{ - -fx-opacity: 0; - } - - .button-hoverable:hover{ - -fx-opacity: 0.6; - -fx-cursor: hand; -} - -.scroll-pane > .viewport { - -fx-background-color: transparent; -} \ No newline at end of file diff --git a/BudgetMasterCore/.classpath b/BudgetMasterCore/.classpath deleted file mode 100644 index 8e795b1c7..000000000 --- a/BudgetMasterCore/.classpath +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<classpath> - <classpathentry kind="src" output="target/classes" path="src/main/java"> - <attributes> - <attribute name="optional" value="true"/> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="src" output="target/test-classes" path="src/test/java"> - <attributes> - <attribute name="optional" value="true"/> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="output" path="target/classes"/> -</classpath> diff --git a/BudgetMasterCore/.project b/BudgetMasterCore/.project deleted file mode 100644 index 5cb225e94..000000000 --- a/BudgetMasterCore/.project +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>BudgetMasterCore</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.jdt.core.javabuilder</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.eclipse.m2e.core.maven2Builder</name> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.eclipse.jdt.core.javanature</nature> - <nature>org.eclipse.m2e.core.maven2Nature</nature> - </natures> -</projectDescription> diff --git a/BudgetMasterCore/.settings/org.eclipse.jdt.core.prefs b/BudgetMasterCore/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 714351aec..000000000 --- a/BudgetMasterCore/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/BudgetMasterCore/.settings/org.eclipse.m2e.core.prefs b/BudgetMasterCore/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f1c..000000000 --- a/BudgetMasterCore/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 diff --git a/BudgetMasterCore/pom.xml b/BudgetMasterCore/pom.xml deleted file mode 100644 index 73e1ad26d..000000000 --- a/BudgetMasterCore/pom.xml +++ /dev/null @@ -1,45 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <groupId>de.deadlocker8</groupId> - <artifactId>BudgetMasterCore</artifactId> - <version>0.0.1-SNAPSHOT</version> - <name>BudgetMasterCore</name> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <configuration> - <source>1.8</source> - <target>1.8</target> - </configuration> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>com.google.code.gson</groupId> - <artifactId>gson</artifactId> - <version>2.8.1</version> - </dependency> - <dependency> - <groupId>joda-time</groupId> - <artifactId>joda-time</artifactId> - <version>2.9.7</version> - </dependency> - <dependency> - <groupId>com.itextpdf</groupId> - <artifactId>itextpdf</artifactId> - <version>5.0.6</version> - </dependency> - <dependency> - <groupId>de.deadlocker8</groupId> - <artifactId>tools</artifactId> - <version>1.0.0</version> - <scope>system</scope> - <systemPath>${basedir}/../lib/Tools.jar</systemPath> - </dependency> - </dependencies> -</project> \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/Budget.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/Budget.java deleted file mode 100644 index 22dc0a7a5..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/Budget.java +++ /dev/null @@ -1,48 +0,0 @@ -package de.deadlocker8.budgetmaster.logic; - -import java.util.List; - -import de.deadlocker8.budgetmaster.logic.payment.Payment; - -public class Budget -{ - private double incomeSum; - private double paymentSum; - - public Budget(List<Payment> payments) - { - incomeSum = 0; - paymentSum = 0; - for(Payment currentPayment : payments) - { - double amount = currentPayment.getAmount(); - if(amount > 0) - { - incomeSum += amount; - } - else - { - paymentSum += amount; - } - } - - incomeSum /= 100.0; - paymentSum /= 100.0; - } - - public double getIncomeSum() - { - return incomeSum; - } - - public double getPaymentSum() - { - return paymentSum; - } - - @Override - public String toString() - { - return "Budget [incomeSum=" + incomeSum + ", paymentSum=" + paymentSum + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/FilterSettings.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/FilterSettings.java deleted file mode 100644 index 82818e4c9..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/FilterSettings.java +++ /dev/null @@ -1,219 +0,0 @@ -package de.deadlocker8.budgetmaster.logic; - -import java.util.ArrayList; - -public class FilterSettings -{ - private boolean isIncomeAllowed; - private boolean isPaymentAllowed; - private boolean isNoRepeatingAllowed; - private boolean isMonthlyRepeatingAllowed; - private boolean isRepeatingEveryXDaysAllowed; - private ArrayList<Integer> allowedCategoryIDs; - private ArrayList<Integer> allowedTagIDs; - private String name; - - public FilterSettings(boolean isIncomeAllowed, boolean isPaymentAllowed, boolean isNoRepeatingAllowed, boolean isMonthlyRepeatingAllowed, boolean isRepeatingEveryXDaysAllowed, ArrayList<Integer> allowedCategoryIDs, ArrayList<Integer> allowedTagIDs, String name) - { - this.isIncomeAllowed = isIncomeAllowed; - this.isPaymentAllowed = isPaymentAllowed; - this.isNoRepeatingAllowed = isNoRepeatingAllowed; - this.isMonthlyRepeatingAllowed = isMonthlyRepeatingAllowed; - this.isRepeatingEveryXDaysAllowed = isRepeatingEveryXDaysAllowed; - this.allowedCategoryIDs = allowedCategoryIDs; - this.allowedTagIDs = allowedTagIDs; - this.name = name; - } - - public FilterSettings() - { - this.isIncomeAllowed = true; - this.isPaymentAllowed = true; - this.isNoRepeatingAllowed = true; - this.isMonthlyRepeatingAllowed = true; - this.isRepeatingEveryXDaysAllowed = true; - this.allowedCategoryIDs = null; - this.allowedTagIDs = null; - this.name = null; - } - - public boolean isIncomeAllowed() - { - return isIncomeAllowed; - } - - public void setIncomeAllowed(boolean isIncomeAllowed) - { - this.isIncomeAllowed = isIncomeAllowed; - } - - public boolean isPaymentAllowed() - { - return isPaymentAllowed; - } - - public void setPaymentAllowed(boolean isPaymentAllowed) - { - this.isPaymentAllowed = isPaymentAllowed; - } - - public boolean isNoRepeatingAllowed() - { - return isNoRepeatingAllowed; - } - - public void setNoRepeatingAllowed(boolean isNoRepeatingAllowed) - { - this.isNoRepeatingAllowed = isNoRepeatingAllowed; - } - - public boolean isMonthlyRepeatingAllowed() - { - return isMonthlyRepeatingAllowed; - } - - public void setMonthlyRepeatingAllowed(boolean isMonthlyRepeatingAllowed) - { - this.isMonthlyRepeatingAllowed = isMonthlyRepeatingAllowed; - } - - public boolean isRepeatingEveryXDaysAllowed() - { - return isRepeatingEveryXDaysAllowed; - } - - public void setRepeatingEveryXDaysAllowed(boolean isRepeatingEveryXDaysAllowed) - { - this.isRepeatingEveryXDaysAllowed = isRepeatingEveryXDaysAllowed; - } - - public ArrayList<Integer> getAllowedCategoryIDs() - { - return allowedCategoryIDs; - } - - public void setAllowedCategoryIDs(ArrayList<Integer> allowedCategoryIDs) - { - this.allowedCategoryIDs = allowedCategoryIDs; - } - - public ArrayList<Integer> getAllowedTagIDs() - { - return allowedTagIDs; - } - - public void setAllowedTagIDs(ArrayList<Integer> allowedTagIDs) - { - this.allowedTagIDs = allowedTagIDs; - } - - public String getName() - { - return name; - } - - public void setName(String name) - { - this.name = name; - } - - @Override - public String toString() - { - return "FilterSettings [isIncomeAllowed=" + isIncomeAllowed + ", isPaymentAllowed=" + isPaymentAllowed + ", isNoRepeatingAllowed=" + isNoRepeatingAllowed + ", isMonthlyRepeatingAllowed=" + isMonthlyRepeatingAllowed + ", isRepeatingEveryXDaysAllowed=" + isRepeatingEveryXDaysAllowed - + ", allowedCategoryIDs=" + allowedCategoryIDs + ", allowedTagIDs=" + allowedTagIDs + ", name=" + name + "]"; - } - - public boolean equals(Object other) - { - if(other == null) return false; - if(other == this) return true; - if(!(other instanceof FilterSettings)) return false; - FilterSettings otherSettings = (FilterSettings)other; - if(isIncomeAllowed == otherSettings.isIncomeAllowed() && - isPaymentAllowed == otherSettings.isPaymentAllowed && - isNoRepeatingAllowed == otherSettings.isNoRepeatingAllowed && - isMonthlyRepeatingAllowed == otherSettings.isMonthlyRepeatingAllowed && - isRepeatingEveryXDaysAllowed == otherSettings.isRepeatingEveryXDaysAllowed) - { - if(name == null) - { - if(otherSettings.getName() != null) - { - return false; - } - } - else - { - if(otherSettings.getName() == null) - { - return false; - } - else - { - if(!name.equals(otherSettings.getName())) return false; - } - } - - - if(allowedCategoryIDs == null) - { - if(otherSettings.getAllowedCategoryIDs() != null) - { - return false; - } - else - { - return isEqualTagIDs(otherSettings); - } - } - else - { - if(otherSettings.getAllowedCategoryIDs() == null) - { - return false; - } - else - { - if(allowedCategoryIDs.equals(otherSettings.getAllowedCategoryIDs())) - { - return isEqualTagIDs(otherSettings); - } - } - } - } - - return false; - } - - private boolean isEqualTagIDs(FilterSettings otherSettings) - { - if(allowedTagIDs == null) - { - if(otherSettings.getAllowedTagIDs() != null) - { - return false; - } - else - { - return true; - } - } - else - { - if(otherSettings.getAllowedTagIDs() == null) - { - return false; - } - else - { - if(allowedTagIDs.equals(otherSettings.getAllowedTagIDs())) - { - return true; - } - } - } - - return false; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/ServerType.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/ServerType.java deleted file mode 100644 index 9db45810d..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/ServerType.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.deadlocker8.budgetmaster.logic; - -public enum ServerType -{ - ONLINE, LOCAL; -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/Settings.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/Settings.java deleted file mode 100644 index dd115b4e2..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/Settings.java +++ /dev/null @@ -1,151 +0,0 @@ -package de.deadlocker8.budgetmaster.logic; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.utils.LanguageType; -import de.deadlocker8.budgetmaster.logic.utils.SaveFileType; - -public class Settings -{ - /* - * VERSIONS - * - * --> 1 - * initial - * - * --> 2 - * added field for "serverType" - * - */ - - private final String TYPE = SaveFileType.BUDGETMASTER_SETTINGS.toString(); - private final int VERSION = 2; - private ServerType serverType; - private String clientSecret; - private String url; - private String secret; - private String currency; - private boolean restActivated = true; - private ArrayList<String> trustedHosts; - private LanguageType language = LanguageType.ENGLISH; - private boolean autoUpdateCheckEnabled = true; - - public Settings() - { - - } - - public ServerType getServerType() - { - return serverType; - } - - public void setServerType(ServerType serverType) - { - this.serverType = serverType; - } - - public String getClientSecret() - { - return clientSecret; - } - - public void setClientSecret(String clientPassword) - { - this.clientSecret = clientPassword; - } - - public String getUrl() - { - return url; - } - - public void setUrl(String url) - { - this.url = url; - } - - public String getSecret() - { - return secret; - } - - public void setSecret(String secret) - { - this.secret = secret; - } - - public String getCurrency() - { - return currency; - } - - public void setCurrency(String currency) - { - this.currency = currency; - } - - public boolean isRestActivated() - { - return restActivated; - } - - public void setRestActivated(boolean restActivated) - { - this.restActivated = restActivated; - } - - public ArrayList<String> getTrustedHosts() - { - return trustedHosts; - } - - public void setTrustedHosts(ArrayList<String> trustedHosts) - { - this.trustedHosts = trustedHosts; - } - - public LanguageType getLanguage() - { - return language; - } - - public void setLanguage(LanguageType language) - { - this.language = language; - } - - public boolean isAutoUpdateCheckEnabled() - { - return autoUpdateCheckEnabled; - } - - public void setAutoUpdateCheckEnabled(boolean autoUpdateCheckEnabled) - { - this.autoUpdateCheckEnabled = autoUpdateCheckEnabled; - } - - public boolean isComplete() - { - if(url == null) - return false; - if(secret == null) - return false; - if(currency == null) - return false; - - return true; - } - - public int getVERSION() - { - return VERSION; - } - - @Override - public String toString() - { - return "Settings [TYPE=" + TYPE + ", VERSION=" + VERSION + ", serverType=" + serverType + ", clientSecret=" + clientSecret + ", url=" + url + ", secret=" + secret + ", currency=" + currency + ", restActivated=" + restActivated + ", trustedHosts=" + trustedHosts + ", language=" + language - + ", autoUpdateCheckEnabled=" + autoUpdateCheckEnabled + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/Category.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/Category.java deleted file mode 100644 index b9daf6e12..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/Category.java +++ /dev/null @@ -1,75 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.category; - -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import tools.Localization; - -public class Category -{ - private int ID; - private String name; - private String color; - - public Category(String name, String color) - { - this.name = name; - this.color = color; - } - - public Category(int ID, String name, String color) - { - this.ID = ID; - this.name = name; - this.color = color; - } - - public int getID() - { - return ID; - } - - public String getName() - { - if(ID == 1) - { - return Localization.getString(Strings.CATEGORY_NONE); - } - - return name; - } - - public void setName(String name) - { - this.name = name; - } - - public String getColor() - { - return color; - } - - public void setColor(String color) - { - this.color = color; - } - - @Override - public String toString() - { - return "Category [ID=" + ID + ", name=" + name + ", color=" + color + "]"; - } - - @Override - public boolean equals(Object obj) - { - if(this == obj) - return true; - if(obj == null) - return false; - if(getClass() != obj.getClass()) - return false; - Category other = (Category)obj; - if(ID != other.ID) - return false; - return true; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/CategoryBudget.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/CategoryBudget.java deleted file mode 100644 index 25ad57c5c..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/CategoryBudget.java +++ /dev/null @@ -1,39 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.category; - -public class CategoryBudget -{ - private Category category; - private double budget; - - public CategoryBudget(Category category, double budget) - { - this.category = category; - this.budget = budget; - } - - public Category getCategory() - { - return category; - } - - public void setCategory(Category category) - { - this.category = category; - } - - public double getBudget() - { - return budget; - } - - public void setBudget(double budget) - { - this.budget = budget; - } - - @Override - public String toString() - { - return "CategoryBudget [category=" + category + ", budget=" + budget + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/CategoryHandler.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/CategoryHandler.java deleted file mode 100644 index 06fd51b8a..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/category/CategoryHandler.java +++ /dev/null @@ -1,61 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.category; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import tools.Localization; - -public class CategoryHandler -{ - private ArrayList<Category> categories; - - public CategoryHandler(ArrayList<Category> categories) - { - this.categories = new ArrayList<>(); - if(categories != null) - { - this.categories.addAll(categories); - - //set correct localized name for category "rest" - for(Category currentCategory : categories) - { - if(currentCategory.getID() == 2) - { - currentCategory.setName(Localization.getString(Strings.CATEGORY_REST)); - } - } - } - } - - public ArrayList<Category> getCategories() - { - return categories; - } - - public ArrayList<Category> getCategoriesWithoutNone() - { - ArrayList<Category> categoriesWithoutNone = new ArrayList<>(); - for(Category currentCategory : categories) - { - if(currentCategory.getID() != 1) - { - categoriesWithoutNone.add(currentCategory); - } - } - - return categoriesWithoutNone; - } - - public Category getCategory(int ID) - { - for(Category currentCategory : categories) - { - if(currentCategory.getID() == ID) - { - return currentCategory; - } - } - - return new Category(1, "NONE", "#FFFFFF"); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/CategoriesChart.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/CategoriesChart.java deleted file mode 100644 index 5921ab8cd..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/CategoriesChart.java +++ /dev/null @@ -1,352 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.charts; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import javafx.geometry.Insets; -import javafx.geometry.Pos; -import javafx.scene.Scene; -import javafx.scene.SnapshotParameters; -import javafx.scene.control.Label; -import javafx.scene.control.Tooltip; -import javafx.scene.image.WritableImage; -import javafx.scene.layout.GridPane; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.Region; -import javafx.scene.layout.VBox; -import javafx.scene.paint.Color; -import javafx.scene.text.Font; -import javafx.scene.transform.Transform; -import javafx.stage.Modality; -import javafx.stage.Stage; -import tools.ConvertTo; -import tools.Localization; - -public class CategoriesChart extends VBox implements ChartExportable -{ - private String titleIncomes; - private String titlePayments; - private ArrayList<CategoryInOutSum> categoryInOutSums; - private String currency; - private double totalIncomes; - private double totalPayments; - private LegendType legendType; - private final double CHART_HEIGHT = 200; - private final double FULL_LEGEND_ITEM_HEIGHT = 40; - private final double DELIMITER_HEIGHT = 21; - - public CategoriesChart(String titleIncomes, String titlePayments, ArrayList<CategoryInOutSum> categoryInOutSums, String currency, LegendType legendType) - { - this.titleIncomes = titleIncomes; - this.titlePayments = titlePayments; - if(categoryInOutSums == null) - { - this.categoryInOutSums = new ArrayList<>(); - } - else - { - this.categoryInOutSums = categoryInOutSums; - } - - this.currency = currency; - this.totalIncomes = getTotal(this.categoryInOutSums, true); - this.totalPayments = getTotal(categoryInOutSums, false); - this.legendType = legendType; - - this.setSpacing(10); - - this.getChildren().add(generate(titleIncomes, true)); - this.getChildren().add(generate(titlePayments, false)); - - Region spacer = new Region(); - this.getChildren().add(spacer); - VBox.setVgrow(spacer, Priority.ALWAYS); - - if(this.legendType == LegendType.NORMAL) - { - this.getChildren().add(generateLegend()); - } - else if(this.legendType == LegendType.FULL) - { - this.getChildren().add(generateFullLegend()); - } - } - - private VBox generate(String title, boolean useIncomes) - { - VBox generatedChart = new VBox(); - HBox chart = new HBox(); - chart.setMinHeight(50); - - Label labelTitle = new Label(title); - labelTitle.setStyle("-fx-font-size: 16; -fx-font-weight: bold;"); - generatedChart.getChildren().add(labelTitle); - VBox.setMargin(labelTitle, new Insets(0, 0, 10, 0)); - - for(CategoryInOutSum currentItem : categoryInOutSums) - { - Label currentPart = new Label(); - currentPart.setStyle("-fx-background-color: " + currentItem.getColor()); - currentPart.prefHeightProperty().bind(chart.heightProperty()); - chart.getChildren().add(currentPart); - - double value; - double percentage; - if(useIncomes) - { - value = currentItem.getBudgetIN() / 100.0; - percentage = value / totalIncomes; - } - else - { - value = -currentItem.getBudgetOUT() / 100.0; - percentage = value / totalPayments; - } - - currentPart.prefWidthProperty().bind(chart.widthProperty().multiply(percentage)); - - Tooltip tooltip = new Tooltip(); - tooltip.setText(Localization.getString(Strings.TOOLTIP_CHART_CATEGORIES, - currentItem.getName(), - Helpers.NUMBER_FORMAT.format(percentage * 100), - Helpers.getCurrencyString(value, currency))); - currentPart.setTooltip(tooltip); - } - - generatedChart.getChildren().add(chart); - - return generatedChart; - } - - private GridPane generateLegend() - { - GridPane legend = new GridPane(); - legend.setPadding(new Insets(10)); - legend.setHgap(20); - legend.setVgap(10); - legend.setAlignment(Pos.CENTER); - legend.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_CHART_LEGEND) + "; -fx-border-color: #212121; -fx-border-width: 1; -fx-border-radius: 5;"); - - if(categoryInOutSums.size() == 0) - { - return legend; - } - - ArrayList<HBox> legendItems = new ArrayList<>(); - for(CategoryInOutSum currentItem : categoryInOutSums) - { - legendItems.add(getLegendItem(currentItem.getName(), Color.web(currentItem.getColor()))); - } - - int legendWidth; - int numberOfItems = legendItems.size(); - if(numberOfItems <= 3) - { - legendWidth = numberOfItems; - } - else - { - legendWidth = (int)Math.ceil(Math.sqrt(numberOfItems)); - } - - for(int i = 0; i < numberOfItems; i++) - { - int columnIndex = i % legendWidth; - int rowIndex = i / legendWidth; - legend.add(legendItems.get(i), columnIndex, rowIndex); - } - - return legend; - } - - private VBox generateFullLegend() - { - VBox legend = new VBox(); - legend.setPadding(new Insets(10)); - legend.setSpacing(10); - legend.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_CHART_LEGEND) + "; -fx-border-color: #212121; -fx-border-width: 1; -fx-border-radius: 5;"); - - if(categoryInOutSums.size() == 0) - { - return legend; - } - - double totalIn = getTotal(categoryInOutSums, true); - double totalOut = getTotal(categoryInOutSums, false); - - HBox hboxLegend = new HBox(); - hboxLegend.setSpacing(0); - - VBox vboxCircles = new VBox(); - vboxCircles.setSpacing(10); - VBox vboxNames = new VBox(); - vboxNames.setSpacing(10); - VBox vboxIn = new VBox(); - vboxIn.setSpacing(10); - VBox vboxOut = new VBox(); - vboxOut.setSpacing(10); - - Label labelHeaderSpacer = new Label(); - labelHeaderSpacer.setMinWidth(20); - labelHeaderSpacer.setMinHeight(20); - vboxCircles.getChildren().add(labelHeaderSpacer); - - Label labelHeaderName = new Label(Localization.getString(Strings.TITLE_CATEGORIES)); - labelHeaderName.setStyle("-fx-font-weight: bold; -fx-underline: true;"); - labelHeaderName.setMinHeight(20); - labelHeaderName.setPadding(new Insets(0, 0, 0, 10)); - vboxNames.getChildren().add(labelHeaderName); - - Label labelHeaderIn = new Label(Localization.getString(Strings.TITLE_INCOMES)); - labelHeaderIn.setStyle("-fx-font-weight: bold; -fx-underline: true;"); - labelHeaderIn.setMinHeight(20); - vboxIn.getChildren().add(labelHeaderIn); - - Label labelHeaderOut = new Label(Localization.getString(Strings.TITLE_PAYMENTS)); - labelHeaderOut.setStyle("-fx-font-weight: bold; -fx-underline: true;"); - labelHeaderOut.setMinHeight(20); - vboxOut.getChildren().add(labelHeaderOut); - - for(int i = 0; i < categoryInOutSums.size(); i++) - { - CategoryInOutSum currentItem = categoryInOutSums.get(i); - - Label labelCircle = new Label(); - labelCircle.setMinWidth(20); - labelCircle.setMinHeight(20); - labelCircle.setStyle("-fx-background-color: " + currentItem.getColor() + "; -fx-background-radius: 50%; -fx-border-width: 1; -fx-border-color: black - fx-border-radius: 50%"); - vboxCircles.getChildren().add(labelCircle); - - Label labelName = new Label(currentItem.getName()); - labelName.setStyle("-fx-font-weight: bold;"); - labelName.setMinHeight(20); - labelName.setPadding(new Insets(0, 0, 0, 10)); - vboxNames.getChildren().add(labelName); - - String percentageIn = totalIn != 0 ? Helpers.NUMBER_FORMAT.format(Math.abs((currentItem.getBudgetIN() / totalIn))) : "0,00"; - Label labelInSum = new Label("+" + Helpers.getCurrencyString(currentItem.getBudgetIN(), currency) + " (" + percentageIn + "%)"); - labelInSum.setStyle("-fx-font-weight: bold;"); - labelInSum.setMinHeight(20); - vboxIn.getChildren().add(labelInSum); - - String percentageOut = totalOut != 0 ? Helpers.NUMBER_FORMAT.format(Math.abs((currentItem.getBudgetOUT() / totalOut))) : "0,00"; - Label labelOutSum = new Label(Helpers.getCurrencyString(currentItem.getBudgetOUT(), currency) + " (" + percentageOut + "%)"); - labelOutSum.setStyle("-fx-font-weight: bold;"); - labelOutSum.setMinHeight(20); - vboxOut.getChildren().add(labelOutSum); - - if(i < categoryInOutSums.size()-1) - { - //add delimiters - vboxCircles.getChildren().add(generateNewSeparator()); - vboxNames.getChildren().add(generateNewSeparator()); - vboxIn.getChildren().add(generateNewSeparator()); - vboxOut.getChildren().add(generateNewSeparator()); - } - } - - hboxLegend.getChildren().add(vboxCircles); - hboxLegend.getChildren().add(vboxNames); - HBox.setHgrow(vboxNames, Priority.ALWAYS); - hboxLegend.getChildren().add(vboxIn); - HBox.setHgrow(vboxIn, Priority.ALWAYS); - hboxLegend.getChildren().add(vboxOut); - HBox.setHgrow(vboxOut, Priority.ALWAYS); - legend.getChildren().add(hboxLegend); - - return legend; - } - - private HBox getLegendItem(String name, Color color) - { - HBox legendItem = new HBox(); - Label labelCircle = new Label(); - labelCircle.setMinWidth(20); - labelCircle.setMinHeight(20); - labelCircle.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(color) + "; -fx-background-radius: 50%; -fx-border-width: 1; -fx-border-color: black - fx-border-radius: 50%"); - - Label labelText = new Label(name); - labelText.setStyle("-fx-font-weight: bold;"); - - legendItem.getChildren().add(labelCircle); - legendItem.getChildren().add(labelText); - HBox.setMargin(labelText, new Insets(0, 0, 0, 5)); - - return legendItem; - } - - private Label generateNewSeparator() - { - Label separator = new Label(); - separator.setStyle("-fx-background-color: #212121; -fx-padding: 0;"); - separator.setFont(new Font(1)); - separator.setMinHeight(1); - separator.setMaxHeight(1); - separator.setMaxWidth(Double.MAX_VALUE); - return separator; - } - - private double getTotal(ArrayList<CategoryInOutSum> categoryInOutSums, boolean useIncomes) - { - double total = 0; - for(CategoryInOutSum currentItem : categoryInOutSums) - { - if(useIncomes) - { - total += currentItem.getBudgetIN() / 100.0; - } - else - { - total += -currentItem.getBudgetOUT() / 100.0; - } - } - return total; - } - - @Override - public WritableImage export(int width, int height) - { - VBox root = new VBox(); - - root.setStyle("-fx-background-color: transparent;"); - root.setPadding(new Insets(25)); - root.setSpacing(10); - - root.getChildren().add(generate(titleIncomes, true)); - root.getChildren().add(generate(titlePayments, false)); - - Region spacer = new Region(); - spacer.setMinHeight(25); - root.getChildren().add(spacer); - VBox.setVgrow(spacer, Priority.ALWAYS); - - root.getChildren().add(generateFullLegend()); - - Stage newStage = new Stage(); - newStage.initModality(Modality.NONE); - newStage.setScene(new Scene(root, width, height)); - newStage.setResizable(false); - newStage.show(); - - SnapshotParameters sp = new SnapshotParameters(); - sp.setTransform(Transform.scale(width / root.getWidth(), height / root.getHeight())); - newStage.close(); - - return root.snapshot(sp, null); - } - - @Override - public double getSuggestedWidth() - { - return getWidth() + 50; - } - - @Override - public double getSuggestedHeight() - { - return CHART_HEIGHT + categoryInOutSums.size() * (FULL_LEGEND_ITEM_HEIGHT + DELIMITER_HEIGHT) + 50; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/CategoryInOutSum.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/CategoryInOutSum.java deleted file mode 100644 index 2d921f896..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/CategoryInOutSum.java +++ /dev/null @@ -1,98 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.charts; - -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import tools.Localization; - -public class CategoryInOutSum -{ - private int ID; - private String name; - private String color; - private int budgetIN; - private int budgetOUT; - - public CategoryInOutSum(int ID, String name, String color, int budgetIN, int budgetOUT) - { - this.ID = ID; - this.name = name; - this.color = color; - this.budgetIN = budgetIN; - this.budgetOUT = budgetOUT; - } - - public int getID() - { - return ID; - } - - public String getName() - { - if(ID == 1) - { - return Localization.getString(Strings.CATEGORY_NONE); - } - - if(ID == 2) - { - return Localization.getString(Strings.CATEGORY_REST); - } - - return name; - } - - public void setName(String name) - { - this.name = name; - } - - public String getColor() - { - return color; - } - - public void setColor(String color) - { - this.color = color; - } - - public int getBudgetIN() - { - return budgetIN; - } - - public void setBudgetIN(int budgetIN) - { - this.budgetIN = budgetIN; - } - - public int getBudgetOUT() - { - return budgetOUT; - } - - public void setBudgetOUT(int budgetOUT) - { - this.budgetOUT = budgetOUT; - } - - @Override - public boolean equals(Object obj) - { - if(this == obj) - return true; - if(obj == null) - return false; - if(getClass() != obj.getClass()) - return false; - CategoryInOutSum other = (CategoryInOutSum)obj; - if(ID != other.ID) - return false; - return true; - } - - @Override - public String toString() - { - return "CategoryInOutSum [ID=" + ID + ", name=" + name + ", color=" + color + ", budgetIN=" + budgetIN + ", budgetOUT=" + budgetOUT + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/ChartExportable.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/ChartExportable.java deleted file mode 100644 index d5516e19c..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/ChartExportable.java +++ /dev/null @@ -1,16 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.charts; - -import javafx.scene.image.WritableImage; - -public interface ChartExportable -{ - WritableImage export(int width, int height); - - double getWidth(); - - double getHeight(); - - double getSuggestedWidth(); - - double getSuggestedHeight(); -} diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/LegendType.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/LegendType.java deleted file mode 100644 index d9f8e6a41..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/LegendType.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.charts; - -public enum LegendType -{ - NONE, NORMAL, FULL; -} diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthBarChart.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthBarChart.java deleted file mode 100644 index d579605e5..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthBarChart.java +++ /dev/null @@ -1,306 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.charts; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import javafx.geometry.Insets; -import javafx.geometry.Orientation; -import javafx.geometry.Pos; -import javafx.scene.Node; -import javafx.scene.Scene; -import javafx.scene.SnapshotParameters; -import javafx.scene.control.Label; -import javafx.scene.control.ScrollPane; -import javafx.scene.control.ScrollPane.ScrollBarPolicy; -import javafx.scene.control.Separator; -import javafx.scene.control.Tooltip; -import javafx.scene.image.WritableImage; -import javafx.scene.layout.GridPane; -import javafx.scene.layout.HBox; -import javafx.scene.layout.Priority; -import javafx.scene.layout.Region; -import javafx.scene.layout.VBox; -import javafx.scene.paint.Color; -import javafx.scene.text.TextAlignment; -import javafx.scene.transform.Transform; -import javafx.stage.Modality; -import javafx.stage.Stage; -import tools.ConvertTo; -import tools.Localization; - -public class MonthBarChart extends VBox implements ChartExportable -{ - private ArrayList<MonthInOutSum> monthInOutSums; - private String currency; - - public MonthBarChart(ArrayList<MonthInOutSum> monthInOutSums, String currency) - { - if(monthInOutSums == null) - { - this.monthInOutSums = new ArrayList<>(); - } - else - { - this.monthInOutSums = monthInOutSums; - } - this.currency = currency; - - ScrollPane scrollPane = new ScrollPane(); - scrollPane.setVbarPolicy(ScrollBarPolicy.NEVER); - scrollPane.setFocusTraversable(false); - scrollPane.setStyle("-fx-background-color: transparent; -fx-background-insets: 0; -fx-border-color: transparent; -fx-border-width: 0; -fx-border-insets: 0;"); - scrollPane.setPadding(new Insets(0, 0, 10, 0)); - - HBox generatedChart = generate(); - scrollPane.setContent(generatedChart); - generatedChart.prefHeightProperty().bind(scrollPane.heightProperty().subtract(30)); - this.getChildren().add(scrollPane); - VBox.setVgrow(scrollPane, Priority.ALWAYS); - - this.getChildren().add(generateLegend()); - } - - private HBox generate() - { - HBox generatedChart = new HBox(); - generatedChart.setAlignment(Pos.TOP_CENTER); - generatedChart.setSpacing(25); - - double total = getMaximum(monthInOutSums); - - for(MonthInOutSum currentMonthSum : monthInOutSums) - { - VBox chartPart = new VBox(); - chartPart.setAlignment(Pos.TOP_CENTER); - - HBox hboxChart = new HBox(); - hboxChart.setAlignment(Pos.BOTTOM_CENTER); - hboxChart.setSpacing(10); - VBox chartIncome = generateChart(currentMonthSum.getSums(), total, true); - hboxChart.getChildren().add(chartIncome); - HBox.setHgrow(chartIncome, Priority.ALWAYS); - VBox chartPayment = generateChart(currentMonthSum.getSums(), total, false); - hboxChart.getChildren().add(chartPayment); - HBox.setHgrow(chartPayment, Priority.ALWAYS); - - chartPart.getChildren().add(hboxChart); - VBox.setVgrow(hboxChart, Priority.ALWAYS); - - Label labelTitle = new Label(currentMonthSum.getDate().toString("MMMM \nYY")); - labelTitle.setStyle("-fx-font-size: 12;"); - labelTitle.setTextAlignment(TextAlignment.CENTER); - chartPart.getChildren().add(labelTitle); - VBox.setMargin(labelTitle, new Insets(10, 0, 0, 0)); - - generatedChart.getChildren().add(chartPart); - generatedChart.getChildren().add(new Separator(Orientation.VERTICAL)); - } - - return generatedChart; - } - - private VBox generateChart(ArrayList<CategoryInOutSum> categoryInOutSums, double total, boolean useBudgetIN) - { - VBox result = new VBox(); - - Label labelAmount = new Label(Helpers.getCurrencyString(getTotal(categoryInOutSums, useBudgetIN), currency)); - labelAmount.setStyle("-fx-font-size: 12; -fx-font-weight: bold;"); - result.getChildren().add(labelAmount); - VBox.setMargin(labelAmount, new Insets(0, 0, 10, 0)); - - VBox chart = new VBox(); - chart.setAlignment(Pos.BOTTOM_CENTER); - - for(CategoryInOutSum currentItem : categoryInOutSums) - { - Label currentPart = new Label(); - currentPart.setStyle("-fx-background-color: " + currentItem.getColor()); - currentPart.prefWidthProperty().bind(chart.widthProperty()); - chart.getChildren().add(currentPart); - - double value; - if(useBudgetIN) - { - value = currentItem.getBudgetIN() / 100.0; - } - else - { - value = -currentItem.getBudgetOUT() / 100.0; - } - - double percentage = value / total; - - currentPart.setMinHeight(0); - currentPart.prefHeightProperty().bind(chart.heightProperty().multiply(percentage)); - - Tooltip tooltip = new Tooltip(); - tooltip.setText(Localization.getString(Strings.TOOLTIP_CHART_CATEGORIES, - currentItem.getName(), - Helpers.NUMBER_FORMAT.format(percentage * 100), - Helpers.getCurrencyString(value, currency))); - currentPart.setTooltip(tooltip); - } - - result.getChildren().add(chart); - VBox.setVgrow(chart, Priority.ALWAYS); - - return result; - } - - private GridPane generateLegend() - { - GridPane legend = new GridPane(); - legend.setPadding(new Insets(10)); - legend.setHgap(20); - legend.setVgap(10); - legend.setAlignment(Pos.CENTER); - legend.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.BACKGROUND_CHART_LEGEND) + "; -fx-border-color: #212121; -fx-border-width: 1; -fx-border-radius: 5;"); - - if(monthInOutSums.size() == 0) - { - return legend; - } - - ArrayList<HBox> legendItems = new ArrayList<>(); - for(CategoryInOutSum currentItem : monthInOutSums.get(0).getSums()) - { - legendItems.add(getLegendItem(currentItem.getName(), Color.web(currentItem.getColor()))); - } - - int legendWidth; - int numberOfItems = legendItems.size(); - if(numberOfItems <= 3) - { - legendWidth = numberOfItems; - } - else - { - legendWidth = (int)Math.ceil(Math.sqrt(numberOfItems)); - } - - for(int i = 0; i < numberOfItems; i++) - { - int columnIndex = i % legendWidth; - int rowIndex = i / legendWidth; - legend.add(legendItems.get(i), columnIndex, rowIndex); - } - - return legend; - } - - private HBox getLegendItem(String name, Color color) - { - HBox legendItem = new HBox(); - Label labelCircle = new Label(); - labelCircle.setMinWidth(20); - labelCircle.setMinHeight(20); - labelCircle.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(color) + "; -fx-background-radius: 50%; -fx-border-width: 1; -fx-border-color: black - fx-border-radius: 50%"); - - Label labelText = new Label(name); - labelText.setStyle("-fx-font-weight: bold;"); - - legendItem.getChildren().add(labelCircle); - legendItem.getChildren().add(labelText); - HBox.setMargin(labelText, new Insets(0, 0, 0, 5)); - - return legendItem; - } - - private double getTotal(ArrayList<CategoryInOutSum> categoryInOutSums, boolean useBudgetIN) - { - double total = 0; - for(CategoryInOutSum currentItem : categoryInOutSums) - { - if(useBudgetIN) - { - total += currentItem.getBudgetIN() / 100.0; - } - else - { - total += -currentItem.getBudgetOUT() / 100.0; - } - } - return total; - } - - private double getMaximum(ArrayList<MonthInOutSum> monthInOutSums) - { - double maximum = 0; - for(MonthInOutSum currentItem : monthInOutSums) - { - if(currentItem.getBudgetIN() > maximum) - { - maximum = currentItem.getBudgetIN(); - } - - if(Math.abs(currentItem.getBudgetOUT()) > maximum) - { - maximum = Math.abs(currentItem.getBudgetOUT()); - } - } - return maximum / 100.0; - } - - @Override - public WritableImage export(int width, int height) - { - VBox root = new VBox(); - root.setStyle("-fx-background-color: transparent;"); - root.setPadding(new Insets(25)); - - HBox generatedChart = generate(); - root.getChildren().add(generatedChart); - VBox.setVgrow(generatedChart, Priority.ALWAYS); - - Region spacer = new Region(); - spacer.setMinHeight(30); - root.getChildren().add(spacer); - - root.getChildren().add(generateLegend()); - - Stage newStage = new Stage(); - newStage.initModality(Modality.NONE); - newStage.setScene(new Scene(root, width, height)); - newStage.setResizable(false); - newStage.show(); - - SnapshotParameters sp = new SnapshotParameters(); - sp.setTransform(Transform.scale(width / root.getWidth(), height / root.getHeight())); - newStage.close(); - - return root.snapshot(sp, null); - } - - @Override - public double getSuggestedWidth() - { - if(this.getChildren().size() < 2) - { - return 0; - } - - Node currentNode = this.getChildren().get(0); - - if(!(currentNode instanceof ScrollPane)) - { - return 0; - } - - ScrollPane scrollPane = (ScrollPane)currentNode; - Node content = scrollPane.getContent(); - if(content == null) - { - return 0; - } - - return ((Region)content).getWidth() + 50; - } - - @Override - public double getSuggestedHeight() - { - return getHeight() + 50; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthInOutSum.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthInOutSum.java deleted file mode 100644 index 9d008662d..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthInOutSum.java +++ /dev/null @@ -1,67 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.charts; - -import java.util.ArrayList; - -import org.joda.time.DateTime; - -public class MonthInOutSum -{ - private int month; - private int year; - private ArrayList<CategoryInOutSum> sums; - - public MonthInOutSum(int month, int year, ArrayList<CategoryInOutSum> sums) - { - this.month = month; - this.year = year; - this.sums = sums; - } - - public int getMonth() - { - return month; - } - - public int getYear() - { - return year; - } - - public ArrayList<CategoryInOutSum> getSums() - { - return sums; - } - - public DateTime getDate() - { - return DateTime.now().withYear(year).withMonthOfYear(month).withDayOfMonth(1); - } - - public int getBudgetIN() - { - int budget = 0; - for(CategoryInOutSum currentCategorySum : sums) - { - budget += currentCategorySum.getBudgetIN(); - } - - return budget; - } - - public int getBudgetOUT() - { - int budget = 0; - for(CategoryInOutSum currentCategorySum : sums) - { - budget += currentCategorySum.getBudgetOUT(); - } - - return budget; - } - - @Override - public String toString() - { - return "MonthInOutSum [month=" + month + ", year=" + year + ", sums=" + sums + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthLineChart.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthLineChart.java deleted file mode 100644 index 015d9da3c..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/charts/MonthLineChart.java +++ /dev/null @@ -1,187 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.charts; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.Set; - -import de.deadlocker8.budgetmaster.logic.utils.Colors; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import javafx.event.EventHandler; -import javafx.geometry.Insets; -import javafx.geometry.Point2D; -import javafx.scene.Node; -import javafx.scene.Scene; -import javafx.scene.SnapshotParameters; -import javafx.scene.chart.CategoryAxis; -import javafx.scene.chart.LineChart; -import javafx.scene.chart.NumberAxis; -import javafx.scene.chart.XYChart; -import javafx.scene.control.Label; -import javafx.scene.control.Tooltip; -import javafx.scene.image.WritableImage; -import javafx.scene.input.MouseEvent; -import javafx.scene.layout.VBox; -import javafx.scene.transform.Transform; -import javafx.stage.Modality; -import javafx.stage.Stage; -import tools.ConvertTo; -import tools.Localization; - -public class MonthLineChart extends VBox implements ChartExportable -{ - private ArrayList<MonthInOutSum> monthInOutSums; - private String currency; - - public MonthLineChart(ArrayList<MonthInOutSum> monthInOutSums, String currency) - { - this.monthInOutSums = monthInOutSums; - this.currency = currency; - - this.setSpacing(10); - this.getChildren().add(generate(true)); - } - - private LineChart<String, Number> generate(boolean animated) - { - final CategoryAxis xAxis = new CategoryAxis(); - final NumberAxis yAxis = new NumberAxis(); - final LineChart<String, Number> generatedChart = new LineChart<>(xAxis, yAxis); - generatedChart.setTitle(null); - generatedChart.setAnimated(animated); - - xAxis.setLabel(""); - yAxis.setLabel(Localization.getString(Strings.CHART_MONTH_LINE_SUM, currency)); - - XYChart.Series<String, Number> seriesIN = new XYChart.Series<String, Number>(); - seriesIN.setName(Localization.getString(Strings.TITLE_INCOMES)); - XYChart.Series<String, Number> seriesOUT = new XYChart.Series<String, Number>(); - seriesOUT.setName(Localization.getString(Strings.TITLE_PAYMENTS)); - - for(MonthInOutSum currentItem : monthInOutSums) - { - String label = currentItem.getDate().toString("MMMM YY"); - - seriesIN.getData().add(new XYChart.Data<String, Number>(label, currentItem.getBudgetIN() / 100.0)); - seriesOUT.getData().add(new XYChart.Data<String, Number>(label, -currentItem.getBudgetOUT() / 100.0)); - } - - generatedChart.getData().add(seriesIN); - generatedChart.getData().add(seriesOUT); - - generatedChart.setLegendVisible(true); - - // add tooltip to every segment - generatedChart.getData().stream().forEach(tool -> { - for(XYChart.Data<String, Number> data : tool.getData()) - { - Tooltip tooltip = new Tooltip(); - - tooltip.setText(Helpers.getCurrencyString(data.getYValue().doubleValue(), currency)); - Tooltip.install(tool.getNode(), tooltip); - Node node = data.getNode(); - node.setOnMouseEntered(new EventHandler<MouseEvent>() - { - @Override - public void handle(MouseEvent event) - { - Point2D p = node.localToScreen(event.getX() + 5, event.getY() + 7); - tooltip.show(node, p.getX(), p.getY()); - } - }); - node.setOnMouseExited(new EventHandler<MouseEvent>() - { - @Override - public void handle(MouseEvent event) - { - tooltip.hide(); - } - }); - } - }); - - // style line for incomes - for(Node n : generatedChart.lookupAll(".default-color0.chart-series-line")) - { - n.setStyle("-fx-stroke: " + ConvertTo.toRGBHexWithoutOpacity(Colors.INCOME) + ";"); - } - - // style line dots for incomes - for(Node n : generatedChart.lookupAll(".default-color0.chart-line-symbol")) - { - n.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.INCOME) + ", white;"); - } - - // style line for payments - for(Node n : generatedChart.lookupAll(".default-color1.chart-series-line")) - { - n.setStyle("-fx-stroke: " + ConvertTo.toRGBHexWithoutOpacity(Colors.PAYMENT) + ";"); - } - - // style line dots for payments - for(Node n : generatedChart.lookupAll(".default-color1.chart-line-symbol")) - { - n.setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.PAYMENT) + ", white;"); - } - - // style legend item according to color - Set<Node> nodes = generatedChart.lookupAll(".chart-legend-item"); - if(nodes.size() > 0) - { - Iterator<Node> iterator = nodes.iterator(); - int counter = 0; - while(iterator.hasNext()) - { - Node node = iterator.next(); - if(node instanceof Label) - { - Label labelLegendItem = (Label)node; - if(counter == 0) - { - labelLegendItem.getGraphic().setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.INCOME) + ";"); - } - else - { - labelLegendItem.getGraphic().setStyle("-fx-background-color: " + ConvertTo.toRGBHexWithoutOpacity(Colors.PAYMENT) + ";"); - } - } - counter++; - } - } - - return generatedChart; - } - - @Override - public WritableImage export(int width, int height) { - VBox root = new VBox(); - root.setStyle("-fx-background-color: transparent;"); - root.setPadding(new Insets(25)); - - root.getChildren().add(generate(false)); - - Stage newStage = new Stage(); - newStage.initModality(Modality.NONE); - newStage.setScene(new Scene(root, width, height)); - newStage.setResizable(false); - newStage.show(); - - SnapshotParameters sp = new SnapshotParameters(); - sp.setTransform(Transform.scale(width / root.getWidth(), height / root.getHeight())); - newStage.close(); - - return root.snapshot(sp, null); - } - - @Override - public double getSuggestedWidth() - { - return getWidth() + 50; - } - - @Override - public double getSuggestedHeight() - { - return getHeight() + 50; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/comparators/DateComparator.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/comparators/DateComparator.java deleted file mode 100644 index 7ae06eda2..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/comparators/DateComparator.java +++ /dev/null @@ -1,18 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.comparators; - -import java.util.Comparator; - -import org.joda.time.DateTime; -import org.joda.time.format.DateTimeFormat; - -public class DateComparator implements Comparator<String> -{ - @Override - public int compare(String o1, String o2) - { - DateTime a = DateTime.parse(o1, DateTimeFormat.forPattern("dd.MM.YYYY")); - DateTime b = DateTime.parse(o2, DateTimeFormat.forPattern("dd.MM.YYYY")); - - return a.compareTo(b); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/comparators/RatingComparator.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/comparators/RatingComparator.java deleted file mode 100644 index 76b69cc5a..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/comparators/RatingComparator.java +++ /dev/null @@ -1,15 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.comparators; - -import java.util.Comparator; - -public class RatingComparator implements Comparator<Integer> -{ - @Override - public int compare(Integer o1, Integer o2) - { - Integer a = o1 > 0 ? 1 : 0; - Integer b = o2 > 0 ? 1 : 0; - - return a.compareTo(b); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/Database.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/Database.java deleted file mode 100644 index 67b7ca2aa..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/Database.java +++ /dev/null @@ -1,82 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.database; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmaster.logic.tag.TagMatch; -import de.deadlocker8.budgetmaster.logic.utils.SaveFileType; - -public class Database -{ - /* - * VERSIONS - * - * --> 1 - * initial - * - * --> 2 - * added tags and tag matches (additional tables) - */ - - @SuppressWarnings("unused") - private final String TYPE = SaveFileType.BUDGETMASTER_DATABASE.toString(); - private final int VERSION = 2; - private ArrayList<Category> categories; - private ArrayList<NormalPayment> normalPayments; - private ArrayList<RepeatingPayment> repeatingPayments; - private ArrayList<Tag> tags; - private ArrayList<TagMatch> tagMatches; - - public Database() - { - - } - - public Database(ArrayList<Category> categories, ArrayList<NormalPayment> normalPayments, ArrayList<RepeatingPayment> repeatingPayments, ArrayList<Tag> tags, ArrayList<TagMatch> tagMatches) - { - this.categories = categories; - this.normalPayments = normalPayments; - this.repeatingPayments = repeatingPayments; - this.tags = tags; - this.tagMatches = tagMatches; - } - - public ArrayList<Category> getCategories() - { - return categories; - } - - public ArrayList<NormalPayment> getNormalPayments() - { - return normalPayments; - } - - public ArrayList<RepeatingPayment> getRepeatingPayments() - { - return repeatingPayments; - } - - public int getVERSION() - { - return VERSION; - } - - public ArrayList<Tag> getTags() - { - return tags; - } - - public ArrayList<TagMatch> getTagMatches() - { - return tagMatches; - } - - @Override - public String toString() - { - return "Database [VERSION=" + VERSION + ", categories=" + categories + ", normalPayments=" + normalPayments + ", repeatingPayments=" + repeatingPayments + ", tags=" + tags + ", tagMatches=" + tagMatches + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/DatabaseImportExport.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/DatabaseImportExport.java deleted file mode 100644 index 9fb4dae18..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/DatabaseImportExport.java +++ /dev/null @@ -1,14 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.database; - -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * Used to mark model classes that only exists in order to allow gson to import and export the database - * - */ -@Target({ElementType.TYPE}) -@Retention(RetentionPolicy.SOURCE) -public @interface DatabaseImportExport {} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/OldDatabase.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/OldDatabase.java deleted file mode 100644 index 51b0448a0..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/database/OldDatabase.java +++ /dev/null @@ -1,45 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.database; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; - -/** - * this class is only used for backwards compatibility while importing database jsons files - */ -@Deprecated -public class OldDatabase -{ - private ArrayList<Category> categories; - private ArrayList<NormalPayment> normalPayments; - private ArrayList<RepeatingPayment> repeatingPayments; - - public OldDatabase() - { - - } - - public OldDatabase(ArrayList<Category> categories, ArrayList<NormalPayment> normalPayments, ArrayList<RepeatingPayment> repeatingPayments) - { - this.categories = categories; - this.normalPayments = normalPayments; - this.repeatingPayments = repeatingPayments; - } - - public ArrayList<Category> getCategories() - { - return categories; - } - - public ArrayList<NormalPayment> getNormalPayments() - { - return normalPayments; - } - - public ArrayList<RepeatingPayment> getRepeatingPayments() - { - return repeatingPayments; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerException.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerException.java deleted file mode 100644 index 13c3778cb..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerException.java +++ /dev/null @@ -1,11 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.localserver; - -public class LocalServerException extends Exception -{ - private static final long serialVersionUID = 3925464782915168752L; - - public LocalServerException(String message) - { - super(message); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerHandler.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerHandler.java deleted file mode 100644 index 1a820f387..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerHandler.java +++ /dev/null @@ -1,144 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.localserver; - -import java.io.File; -import java.io.FileNotFoundException; -import java.io.IOException; -import java.io.InputStream; -import java.io.PrintWriter; -import java.net.URL; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.nio.file.StandardCopyOption; -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerConnection; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import logger.Logger; -import tools.HashUtils; -import tools.Localization; -import tools.PathUtils; - -public class LocalServerHandler -{ - private static final String BUILD_FOLDER = "https://github.com/deadlocker8/BudgetMaster/raw/{}/build/"; - - public LocalServerHandler() - { - - } - - public boolean isServerPresent() - { - File file = new File(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/localServer/BudgetMasterServer.jar"); - return file.exists(); - } - - public boolean isServerRunning() - { - try - { - Settings settings = new Settings(); - settings.setUrl("https://localhost:9000"); - settings.setSecret(HashUtils.hash("BudgetMaster", Helpers.SALT)); - ArrayList<String> trustedHosts = new ArrayList<>(); - trustedHosts.add("localhost"); - settings.setTrustedHosts(trustedHosts); - ServerConnection connection = new ServerConnection(settings); - connection.getServerInfo(); - - return true; - } - catch(Exception e) - { - Logger.debug(e); - return false; - } - } - - public void shutdownServer() throws Exception - { - Settings settings = new Settings(); - settings.setUrl("https://localhost:9000"); - settings.setSecret(HashUtils.hash("BudgetMaster", Helpers.SALT)); - ArrayList<String> trustedHosts = new ArrayList<>(); - trustedHosts.add("localhost"); - settings.setTrustedHosts(trustedHosts); - ServerConnection connection = new ServerConnection(settings); - connection.shutdownServer(); - } - - public void createServerSettingsIfNotExists() throws FileNotFoundException - { - File settingsFile = new File(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/localServer/settings.json"); - if(settingsFile.exists()) - { - return; - } - Logger.debug("Creating settings file for local server..."); - - String databasePath = PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/localServer/BudgetMaster.db"; - String settings = "{\"databaseType\": \"sqlite\"," + - "\"databaseUrl\": \"" + databasePath.replace("\\", "/") + "\"," + - "\"databaseName\": \"budgetmaster\"," + - "\"databaseUsername\": \"root\"," + - "\"databasePassword\": \"\"," + - "\"serverPort\": 9000," + - "\"serverSecret\": \"BudgetMaster\"," + - "\"keystorePath\": \"default\"," + - "\"keystorePassword\": \"BudgetMaster\"}"; - PrintWriter writer = new PrintWriter(settingsFile); - writer.println(settings); - writer.close(); - } - - public void downloadServer(String versionName) throws Exception - { - Logger.debug("Downloading BudgetMasterServer from " + BUILD_FOLDER.replace("{}", "v" + versionName)); - PathUtils.checkFolder(new File(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/localServer")); - - //download into temp directory and file - Path target = Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/localServer/BudgetMasterServer.jar"); - download(BUILD_FOLDER.replace("{}", "v" + Localization.getString(Strings.VERSION_NAME)) + "BudgetMasterServer.jar", target); - Logger.debug("Successfully downloaded BudgetMasterServer " + versionName); - } - - private void download(String url, Path target) throws IOException - { - URL website = new URL(url); - InputStream in = website.openStream(); - Files.copy(in, target, StandardCopyOption.REPLACE_EXISTING); - } - - public Process startServer() throws IOException - { - ProcessBuilder pb = new ProcessBuilder("java", "-jar", Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/localServer/BudgetMasterServer.jar").toString()); - return pb.start(); - } - - public LocalServerStatus getServerStatus() - { - LocalServerHandler serverHandler = new LocalServerHandler(); - if(serverHandler.isServerPresent()) - { - Logger.debug("Local server found"); - if(serverHandler.isServerRunning()) - { - Logger.debug("Local server is running"); - return LocalServerStatus.ACTIVE; - } - else - { - Logger.debug("Local server is NOT running"); - return LocalServerStatus.INACTIVE; - } - } - else - { - Logger.debug("Local server NOT found"); - return LocalServerStatus.MISSING; - } - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerStatus.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerStatus.java deleted file mode 100644 index 7f36dcd26..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/localserver/LocalServerStatus.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.localserver; - -public enum LocalServerStatus -{ - ACTIVE, INACTIVE, MISSING; -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/LatestRepeatingPayment.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/LatestRepeatingPayment.java deleted file mode 100644 index ada7d739c..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/LatestRepeatingPayment.java +++ /dev/null @@ -1,36 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.payment; - -public class LatestRepeatingPayment -{ - private int ID; - private int repeatingPaymentID; - private String lastDate; - - public LatestRepeatingPayment(int ID, int repeatingPaymentID, String lastDate) - { - this.ID = ID; - this.repeatingPaymentID = repeatingPaymentID; - this.lastDate = lastDate; - } - - public int getID() - { - return ID; - } - - public int getRepeatingPaymentID() - { - return repeatingPaymentID; - } - - public String getLastDate() - { - return lastDate; - } - - @Override - public String toString() - { - return "LatestRepeatingPayment [ID=" + ID + ", repeatingPaymentID=" + repeatingPaymentID + ", lastDate=" + lastDate + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/NormalPayment.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/NormalPayment.java deleted file mode 100644 index 2b168c2f7..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/NormalPayment.java +++ /dev/null @@ -1,20 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.payment; - -public class NormalPayment extends Payment -{ - public NormalPayment(int ID, int amount, String date, int categoryID, String name, String description) - { - super(ID, amount, date, categoryID, name, description); - } - - public NormalPayment() - { - super(); - } - - @Override - public String toString() - { - return "NormalPayment [ID=" + super.getID() + ", amount=" + super.getAmount() + ", date=" + super.getDate() + ", categoryID=" + super.getCategoryID() + ", name=" + super.getName() + ", description=" + super.getDescription() + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/Payment.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/Payment.java deleted file mode 100644 index 4e6525e3f..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/Payment.java +++ /dev/null @@ -1,91 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.payment; - -public abstract class Payment -{ - private int ID; - private int amount; - private String date; - private int categoryID; - private String name; - private String description; - - public Payment(int ID, int amount, String date, int categoryID, String name, String description) - { - this.ID = ID; - this.amount = amount; - this.date = date; - this.categoryID = categoryID; - this.name = name; - this.description = description; - } - - public Payment() - { - - } - - public int getID() - { - return ID; - } - - public void setID(int iD) - { - ID = iD; - } - - public int getAmount() - { - return amount; - } - - public void setAmount(int amount) - { - this.amount = amount; - } - - public String getDate() - { - return date; - } - - public void setDate(String date) - { - this.date = date; - } - - public int getCategoryID() - { - return categoryID; - } - - public void setCategoryID(int categoryID) - { - this.categoryID = categoryID; - } - - public String getName() - { - return name; - } - - public void setName(String name) - { - this.name = name; - } - - public String getDescription() - { - return description; - } - - public void setDescription(String description) - { - this.description = description; - } - - public boolean isIncome() - { - return amount > 0; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentHandler.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentHandler.java deleted file mode 100644 index a47320061..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentHandler.java +++ /dev/null @@ -1,202 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.payment; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.stream.Collectors; - -import de.deadlocker8.budgetmaster.logic.FilterSettings; -import de.deadlocker8.budgetmaster.logic.tag.TagHandler; - -public class PaymentHandler -{ - private ArrayList<Payment> payments; - - public PaymentHandler() - { - payments = new ArrayList<>(); - } - - public ArrayList<Payment> getPayments() - { - return payments; - } - - public void setPayments(ArrayList<Payment> payments) - { - this.payments = payments; - } - - public int getPosition(Payment payment) - { - if(payment == null) - return -1; - - for(int i = 0; i < payments.size(); i++) - { - if(payment.getID() == payments.get(i).getID()) - { - return i; - } - } - - return -1; - } - - public void sort() - { - Collections.sort(payments, new Comparator<Payment>() { - @Override - public int compare(Payment payment1, Payment payment2) - { - return payment2.getDate().compareTo(payment1.getDate()); - } - }); - } - - private ArrayList<Payment> filterByRepeating(FilterSettings filterSettings, ArrayList<Payment> paymentsList) - { - if(filterSettings.isNoRepeatingAllowed() && filterSettings.isMonthlyRepeatingAllowed() && filterSettings.isRepeatingEveryXDaysAllowed()) - { - return paymentsList; - } - - ArrayList<Payment> filteredPayments = new ArrayList<>(); - for(Payment currentPayment : paymentsList) - { - //NormalPayment or rest - if(currentPayment instanceof NormalPayment || currentPayment.getID() == -1) - { - if(filterSettings.isNoRepeatingAllowed()) - { - filteredPayments.add(currentPayment); - } - } - //RepeatingPayment - else - { - RepeatingPaymentEntry repeatingPayment = (RepeatingPaymentEntry)currentPayment; - if((repeatingPayment.getRepeatInterval() != 0 && filterSettings.isRepeatingEveryXDaysAllowed()) || - (repeatingPayment.getRepeatMonthDay() != 0 && filterSettings.isMonthlyRepeatingAllowed())) - { - filteredPayments.add(currentPayment); - } - } - } - - return filteredPayments; - } - - private ArrayList<Payment> filterByCategory(FilterSettings filterSettings, ArrayList<Payment> paymentsList) - { - if(filterSettings.getAllowedCategoryIDs() == null) - { - return paymentsList; - } - - if(filterSettings.getAllowedCategoryIDs().size() == 0) - { - return new ArrayList<>(); - } - - ArrayList<Payment> filteredPayments = new ArrayList<>(); - for(Payment currentPayment : paymentsList) - { - if(filterSettings.getAllowedCategoryIDs().contains(currentPayment.getCategoryID())) - { - filteredPayments.add(currentPayment); - } - } - - return filteredPayments; - } - - private ArrayList<Payment> filterByName(FilterSettings filterSettings, ArrayList<Payment> paymentsList) - { - if(filterSettings.getName() == null) - { - return paymentsList; - } - - ArrayList<Payment> filteredPayments = new ArrayList<>(); - for(Payment currentPayment : paymentsList) - { - if(currentPayment.getName().toLowerCase().contains(filterSettings.getName().toLowerCase())) - { - filteredPayments.add(currentPayment); - } - } - - return filteredPayments; - } - - private ArrayList<Payment> filterByType(FilterSettings filterSettings, ArrayList<Payment> paymentsList) - { - if(filterSettings.isIncomeAllowed() && filterSettings.isPaymentAllowed()) - { - return paymentsList; - } - - if(filterSettings.isIncomeAllowed()) - { - return new ArrayList<Payment>(paymentsList.stream(). - filter(p -> p.getAmount() > 0). - collect(Collectors.toList())); - } - else if(filterSettings.isPaymentAllowed()) - { - return new ArrayList<Payment>(paymentsList.stream(). - filter(p -> p.getAmount() < 0). - collect(Collectors.toList())); - } - - return new ArrayList<>(); - } - - private ArrayList<Payment> filterByTag(FilterSettings filterSettings, ArrayList<Payment> paymentsList, TagHandler tagHandler) throws Exception - { - if(filterSettings.getAllowedTagIDs() == null) - { - return paymentsList; - } - - if(filterSettings.getAllowedTagIDs().size() == 0) - { - return new ArrayList<>(); - } - - ArrayList<Payment> filteredPayments = new ArrayList<>(); - for(Payment currentPayment : paymentsList) - { - ArrayList<Integer> paymentTagIDs = tagHandler.getTagIDs(currentPayment); - - for(Integer tagID : filterSettings.getAllowedTagIDs()) - { - if(paymentTagIDs.contains(tagID)) - { - filteredPayments.add(currentPayment); - break; - } - } - } - - return filteredPayments; - } - - public void filter(FilterSettings filterSettings, TagHandler tagHandler) throws Exception - { - ArrayList<Payment> filteredPayments = filterByType(filterSettings, payments); - filteredPayments = filterByType(filterSettings, filteredPayments); - filteredPayments = filterByRepeating(filterSettings, filteredPayments); - filteredPayments = filterByCategory(filterSettings, filteredPayments); - filteredPayments = filterByName(filterSettings, filteredPayments); - filteredPayments = filterByTag(filterSettings, filteredPayments, tagHandler); - - payments = filteredPayments; - } - - public String toString() - { - return "PaymentHandler [payments=" + payments + "]"; - } -} diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentJSONDeserializer.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentJSONDeserializer.java deleted file mode 100644 index 84bb9fd21..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentJSONDeserializer.java +++ /dev/null @@ -1,59 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.payment; - -import java.util.ArrayList; - -import com.google.gson.JsonArray; -import com.google.gson.JsonElement; -import com.google.gson.JsonNull; -import com.google.gson.JsonObject; - -public class PaymentJSONDeserializer -{ - public static Payment deserializePayment(JsonObject paymentObject) - { - if(paymentObject.get("classType").getAsString().equals("NormalPayment")) - { - Payment payment = new NormalPayment(); - payment.setID(paymentObject.get("ID").getAsInt()); - payment.setAmount(paymentObject.get("amount").getAsInt()); - payment.setDate(paymentObject.get("date").getAsString()); - payment.setCategoryID(paymentObject.get("categoryID").getAsInt()); - payment.setName(paymentObject.get("name").getAsString()); - payment.setDescription(paymentObject.get("description").getAsString()); - return payment; - } - - if(paymentObject.get("classType").getAsString().equals("RepeatingPayment")) - { - RepeatingPayment payment = new RepeatingPayment(); - payment.setID(paymentObject.get("ID").getAsInt()); - payment.setAmount(paymentObject.get("amount").getAsInt()); - payment.setDate(paymentObject.get("date").getAsString()); - payment.setCategoryID(paymentObject.get("categoryID").getAsInt()); - payment.setName(paymentObject.get("name").getAsString()); - payment.setDescription(paymentObject.get("description").getAsString()); - - payment.setRepeatInterval(paymentObject.get("repeatInterval").getAsInt()); - payment.setRepeatMonthDay(paymentObject.get("repeatMonthDay").getAsInt()); - - JsonElement repeatEndDate = paymentObject.get("repeatEndDate"); - payment.setRepeatEndDate(repeatEndDate != JsonNull.INSTANCE ? repeatEndDate.getAsString() : null); - - return payment; - } - - return null; - } - - public static ArrayList<Payment> deserializePaymentList(JsonArray paymentArray) - { - ArrayList<Payment> payments = new ArrayList<>(); - - for(JsonElement currentElement : paymentArray) - { - payments.add(deserializePayment(currentElement.getAsJsonObject())); - } - - return payments; - } -} diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentJSONSerializer.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentJSONSerializer.java deleted file mode 100644 index 0727bebe7..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/PaymentJSONSerializer.java +++ /dev/null @@ -1,53 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.payment; - -import java.util.List; - -import com.google.gson.JsonArray; -import com.google.gson.JsonObject; - -public class PaymentJSONSerializer -{ - public static JsonObject serializePayment(Payment payment) - { - JsonObject paymentObject = new JsonObject(); - paymentObject.addProperty("ID", payment.getID()); - paymentObject.addProperty("amount", payment.getAmount()); - paymentObject.addProperty("date", payment.getDate()); - paymentObject.addProperty("categoryID", payment.getCategoryID()); - paymentObject.addProperty("name", payment.getName()); - paymentObject.addProperty("description", payment.getDescription()); - - if(payment instanceof NormalPayment) - { - paymentObject.addProperty("classType", "NormalPayment"); - } - - if(payment instanceof RepeatingPayment) - { - RepeatingPayment repeatingPayment = (RepeatingPayment)payment; - - paymentObject.addProperty("repeatInterval", repeatingPayment.getRepeatInterval()); - paymentObject.addProperty("repeatMonthDay", repeatingPayment.getRepeatMonthDay()); - paymentObject.addProperty("repeatEndDate", repeatingPayment.getRepeatEndDate()); - - paymentObject.addProperty("classType", "RepeatingPayment"); - } - - return paymentObject; - } - - public static JsonObject serializePaymentList(List<Payment> payments) - { - JsonArray paymentArray = new JsonArray(); - - for(Payment currentPayment : payments) - { - paymentArray.add(serializePayment(currentPayment)); - } - - JsonObject result = new JsonObject(); - result.add("payments", paymentArray); - - return result; - } -} diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/RepeatingPayment.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/RepeatingPayment.java deleted file mode 100644 index 6e2e0d8d1..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/RepeatingPayment.java +++ /dev/null @@ -1,71 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.payment; - -public class RepeatingPayment extends Payment -{ - private int repeatInterval; - private String repeatEndDate; - private int repeatMonthDay; - - public RepeatingPayment(int ID, int amount, String date, int categoryID, String name, String description, int repeatInterval, String repeatEndDate, int repeatMonthDay) - { - super(ID, amount, date, categoryID, name, description); - this.repeatInterval = repeatInterval; - this.repeatEndDate = repeatEndDate; - this.repeatMonthDay = repeatMonthDay; - } - - public RepeatingPayment() - { - - } - - public int getRepeatInterval() - { - return repeatInterval; - } - - public void setRepeatInterval(int repeatInterval) - { - this.repeatInterval = repeatInterval; - } - - public String getRepeatEndDate() - { - return repeatEndDate; - } - - public void setRepeatEndDate(String repeatEndDate) - { - this.repeatEndDate = repeatEndDate; - } - - public int getRepeatMonthDay() - { - return repeatMonthDay; - } - - public void setRepeatMonthDay(int repeatMonthDay) - { - this.repeatMonthDay = repeatMonthDay; - } - - @Override - public String toString() - { - return "RepeatingPayment [ID=" + super.getID() + ", amount=" + super.getAmount() + ", date=" + super.getDate() + ", categoryID=" + super.getCategoryID() + ", name=" + super.getName() + ", description=" + super.getDescription() + ", repeatInterval=" + repeatInterval + ", repeatEndDate=" + repeatEndDate + ", repeatMonthDay=" + repeatMonthDay + "]"; - } - - @Override - public boolean equals(Object obj) - { - if(obj instanceof LatestRepeatingPayment) - { - return super.getID() == ((LatestRepeatingPayment)obj).getRepeatingPaymentID(); - } - else if(obj instanceof RepeatingPayment) - { - return super.getID() == ((RepeatingPayment)obj).getID(); - } - return super.equals(obj); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/RepeatingPaymentEntry.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/RepeatingPaymentEntry.java deleted file mode 100644 index 9b97a7a91..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/payment/RepeatingPaymentEntry.java +++ /dev/null @@ -1,45 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.payment; - -public class RepeatingPaymentEntry extends Payment -{ - private int repeatingPaymentID; - private int repeatInterval; - private String repeatEndDate; - private int repeatMonthDay; - - public RepeatingPaymentEntry(int ID, int repeatingPaymentID, String date, int amount, int categoryID, String name, String description, int repeatInterval, String repeatEndDate, int repeatMonthDay) - { - super(ID, amount, date, categoryID, name, description); - this.repeatingPaymentID = repeatingPaymentID; - this.repeatInterval = repeatInterval; - this.repeatEndDate = repeatEndDate; - this.repeatMonthDay = repeatMonthDay; - } - - public int getRepeatingPaymentID() - { - return repeatingPaymentID; - } - - public int getRepeatInterval() - { - return repeatInterval; - } - - public String getRepeatEndDate() - { - return repeatEndDate; - } - - public int getRepeatMonthDay() - { - return repeatMonthDay; - } - - @Override - public String toString() - { - return "RepeatingPaymentEntry [ID=" + super.getID() + ", repeatingPaymentID=" + repeatingPaymentID + ", date=" + super.getDate() + ", amount=" + super.getAmount() + ", categoryID=" + super.getCategoryID() + ", name=" + super.getName() + ", description=" + super.getDescription() + ", repeatInterval=" + repeatInterval + ", repeatEndDate=" + repeatEndDate + ", repeatMonthDay=" - + repeatMonthDay + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/AmountType.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/AmountType.java deleted file mode 100644 index a114ffd7c..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/AmountType.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -public enum AmountType -{ - INCOME, PAYMENT, BOTH -} diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnFilter.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnFilter.java deleted file mode 100644 index cf7228509..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnFilter.java +++ /dev/null @@ -1,45 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -import java.util.HashSet; - -public class ColumnFilter -{ - private HashSet<ColumnType> columns; - - public ColumnFilter() - { - columns = new HashSet<ColumnType>(); - } - - public void addColumn(ColumnType column) - { - columns.add(column); - } - - public void removeColumn(ColumnType column) - { - columns.remove(column); - } - - public void toggleColumn(ColumnType column, boolean add) - { - if(add) - { - columns.add(column); - } - else - { - columns.remove(column); - } - } - - public HashSet<ColumnType> getColumns() - { - return columns; - } - - public boolean containsColumn(ColumnType column) - { - return columns.contains(column); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnOrder.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnOrder.java deleted file mode 100644 index b049de10d..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnOrder.java +++ /dev/null @@ -1,29 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -import java.util.ArrayList; - -public class ColumnOrder -{ - private ArrayList<ColumnType> columns; - - public ColumnOrder() - { - columns = new ArrayList<ColumnType>(); - } - - public ArrayList<ColumnType> getColumns() - { - return columns; - } - - public void addColumn(ColumnType column) - { - columns.add(column); - } - - @Override - public String toString() - { - return "ColumnOrder [columns=" + columns + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnType.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnType.java deleted file mode 100644 index 5401e1ffb..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ColumnType.java +++ /dev/null @@ -1,36 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import tools.Localization; - -public enum ColumnType -{ - POSITION(Strings.REPORT_POSITION, 1), - DATE(Strings.REPORT_DATE, 2), - REPEATING(Strings.REPORT_REPEATING, 1), - CATEGORY(Strings.REPORT_CATEGORY, 3), - NAME(Strings.REPORT_NAME, 3), - DESCRIPTION(Strings.REPORT_DESCRIPTION, 3), - TAGS(Strings.REPORT_TAGS, 3), - RATING(Strings.REPORT_RATING, 1), - AMOUNT(Strings.REPORT_AMOUNT, 2); - - private String name; - private float proportion; - - private ColumnType(String name, float proportion) - { - this.name = name; - this.proportion = proportion; - } - - public String getName() - { - return Localization.getString(name); - } - - public float getProportion() - { - return proportion; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/HeaderFooterPageEvent.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/HeaderFooterPageEvent.java deleted file mode 100644 index 6ed310d20..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/HeaderFooterPageEvent.java +++ /dev/null @@ -1,35 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -import org.joda.time.DateTime; - -import com.itextpdf.text.BaseColor; -import com.itextpdf.text.Document; -import com.itextpdf.text.Element; -import com.itextpdf.text.Font; -import com.itextpdf.text.FontFactory; -import com.itextpdf.text.Phrase; -import com.itextpdf.text.pdf.BaseFont; -import com.itextpdf.text.pdf.ColumnText; -import com.itextpdf.text.pdf.PdfPageEventHelper; -import com.itextpdf.text.pdf.PdfWriter; - -import de.deadlocker8.budgetmaster.logic.utils.Fonts; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import tools.Localization; - -public class HeaderFooterPageEvent extends PdfPageEventHelper -{ - public void onStartPage(PdfWriter writer, Document document) - { - - } - - public void onEndPage(PdfWriter writer, Document document) - { - Font font = FontFactory.getFont(Fonts.OPEN_SANS, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 8, Font.NORMAL, BaseColor.BLACK); - - ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase(Localization.getString(Strings.REPORT_FOOTER_LEFT), font), 100, 25, 0); - ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase(Localization.getString(Strings.REPORT_FOOTER_CENTER, document.getPageNumber()), font), 300, 25, 0); - ColumnText.showTextAligned(writer.getDirectContent(), Element.ALIGN_CENTER, new Phrase(DateTime.now().toString("dd.MM.YYYY"), font), 500, 25, 0); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportGenerator.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportGenerator.java deleted file mode 100644 index 73166530c..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportGenerator.java +++ /dev/null @@ -1,297 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -import java.awt.Color; -import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileOutputStream; -import java.util.ArrayList; - -import org.joda.time.DateTime; -import org.joda.time.format.DateTimeFormat; - -import com.itextpdf.text.BaseColor; -import com.itextpdf.text.Chapter; -import com.itextpdf.text.Chunk; -import com.itextpdf.text.Document; -import com.itextpdf.text.DocumentException; -import com.itextpdf.text.Element; -import com.itextpdf.text.Font; -import com.itextpdf.text.FontFactory; -import com.itextpdf.text.Paragraph; -import com.itextpdf.text.Phrase; -import com.itextpdf.text.pdf.BaseFont; -import com.itextpdf.text.pdf.GrayColor; -import com.itextpdf.text.pdf.PdfPCell; -import com.itextpdf.text.pdf.PdfPTable; -import com.itextpdf.text.pdf.PdfWriter; - -import de.deadlocker8.budgetmaster.logic.Budget; -import de.deadlocker8.budgetmaster.logic.category.CategoryBudget; -import de.deadlocker8.budgetmaster.logic.utils.Fonts; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import tools.Localization; - -public class ReportGenerator -{ - private ArrayList<ReportItem> reportItems; - private ArrayList<CategoryBudget> categoryBudgets; - private ReportPreferences reportPreferences; - private File savePath; - private String currency; - private DateTime date; - private Budget budget; - private final String FONT = Fonts.OPEN_SANS; - - public ReportGenerator(ArrayList<ReportItem> reportItems, ArrayList<CategoryBudget> categoryBudgets, ReportPreferences reportPreferences, File savePath, String currency, DateTime date, Budget budget) - { - this.reportItems = reportItems; - this.categoryBudgets = categoryBudgets; - this.reportPreferences = reportPreferences; - this.savePath = savePath; - this.currency = currency; - this.date = date; - this.budget = budget; - } - - private Chapter generateHeader() - { - Font font = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 16, Font.BOLDITALIC, BaseColor.BLACK); - Chunk chunk = new Chunk(Localization.getString(Strings.REPORT_HEADLINE, date.toString("MMMM yyyy")), font); - Chapter chapter = new Chapter(new Paragraph(chunk), 1); - chapter.setNumberDepth(0); - chapter.add(Chunk.NEWLINE); - return chapter; - } - - private PdfPTable generateTable(int tableWidth, AmountType amountType) - { - int numberOfColumns = reportPreferences.getColumnOrder().getColumns().size(); - int totalIncome = 0; - int totalPayment = 0; - - if(numberOfColumns > 0) - { - float[] proportions = new float[numberOfColumns]; - for(int i = 0; i < reportPreferences.getColumnOrder().getColumns().size(); i++) - { - proportions[i] = reportPreferences.getColumnOrder().getColumns().get(i).getProportion(); - } - - PdfPTable table = new PdfPTable(proportions); - table.setWidthPercentage(tableWidth); - Font font = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 8, Font.NORMAL, GrayColor.BLACK); - - for(ColumnType column : reportPreferences.getColumnOrder().getColumns()) - { - PdfPCell cell = new PdfPCell(new Phrase(column.getName(), font)); - cell.setBackgroundColor(GrayColor.LIGHT_GRAY); - cell.setHorizontalAlignment(Element.ALIGN_CENTER); - cell.setVerticalAlignment(Element.ALIGN_MIDDLE); - table.addCell(cell); - } - - for(ReportItem currentItem : reportItems) - { - if(currentItem.getAmount() > 0) - { - totalIncome += currentItem.getAmount(); - if(amountType == AmountType.PAYMENT) - { - continue; - } - } - else - { - totalPayment += currentItem.getAmount(); - if(amountType == AmountType.INCOME) - { - continue; - } - } - - for(ColumnType column : reportPreferences.getColumnOrder().getColumns()) - { - PdfPCell cell = new PdfPCell(new Phrase(getProperty(currentItem, column), font)); - cell.setBackgroundColor(new BaseColor(Color.WHITE)); - cell.setHorizontalAlignment(Element.ALIGN_CENTER); - cell.setVerticalAlignment(Element.ALIGN_MIDDLE); - table.addCell(cell); - } - } - - PdfPCell cellTotal; - String total = ""; - switch(amountType) - { - case BOTH: - String totalIncomeString = Helpers.getCurrencyString(totalIncome, currency); - String totalPaymentString = Helpers.getCurrencyString(totalPayment, currency); - total = Localization.getString(Strings.REPORT_SUM_TOTAL, totalIncomeString, totalPaymentString); - break; - case INCOME: - total = Localization.getString(Strings.REPORT_SUM, Helpers.getCurrencyString(totalIncome, currency)); - break; - case PAYMENT: - total = Localization.getString(Strings.REPORT_SUM, Helpers.getCurrencyString(totalPayment, currency)); - break; - default: - break; - } - - cellTotal = new PdfPCell(new Phrase(total, font)); - cellTotal.setBackgroundColor(new BaseColor(Color.WHITE)); - cellTotal.setColspan(numberOfColumns); - cellTotal.setHorizontalAlignment(Element.ALIGN_RIGHT); - cellTotal.setVerticalAlignment(Element.ALIGN_MIDDLE); - table.addCell(cellTotal); - - return table; - } - return null; - } - - public void generate() throws FileNotFoundException, DocumentException - { - Document document = new Document(); - PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(savePath)); - writer.setPageEvent(new HeaderFooterPageEvent()); - document.open(); - document.setMargins(50, 45, 50, 70); - Font headerFont = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 14, Font.BOLD, BaseColor.BLACK); - Font smallHeaderFont = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 12, Font.BOLD, BaseColor.BLACK); - - document.add(generateHeader()); - document.add(Chunk.NEWLINE); - - if(reportPreferences.isIncludeBudget()) - { - Font fontGreen = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 12, Font.NORMAL, new BaseColor(36, 122, 45)); - Font fontRed = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 12, Font.NORMAL, BaseColor.RED); - Font fontBlack = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 12, Font.BOLD, BaseColor.BLACK); - - document.add(new Paragraph(Localization.getString(Strings.REPORT_BUDGET), headerFont)); - document.add(Chunk.NEWLINE); - document.add(new Paragraph(Localization.getString(Strings.REPORT_INCOMES) + Helpers.getCurrencyString(budget.getIncomeSum(), currency), fontGreen)); - document.add(new Paragraph(Localization.getString(Strings.REPORT_PAYMENTS) + Helpers.getCurrencyString(budget.getPaymentSum(), currency), fontRed)); - document.add(new Paragraph(Localization.getString(Strings.REPORT_BUDGET_REST) + Helpers.getCurrencyString(budget.getIncomeSum() + budget.getPaymentSum(), currency), fontBlack)); - document.add(Chunk.NEWLINE); - } - - document.add(new Paragraph(Localization.getString(Strings.REPORT_HEADLINE_PAYMENTS_OVERVIEW), headerFont)); - document.add(Chunk.NEWLINE); - - if(reportPreferences.isSplitTable()) - { - document.add(new Paragraph(Localization.getString(Strings.TITLE_INCOMES), smallHeaderFont)); - document.add(Chunk.NEWLINE); - - PdfPTable table = generateTable(100, AmountType.INCOME); - if(table != null) - { - document.add(table); - } - - document.add(Chunk.NEWLINE); - document.add(new Paragraph(Localization.getString(Strings.TITLE_PAYMENTS), smallHeaderFont)); - document.add(Chunk.NEWLINE); - - table = generateTable(100, AmountType.PAYMENT); - if(table != null) - { - document.add(table); - } - } - else - { - PdfPTable table = generateTable(100, AmountType.BOTH); - if(table != null) - { - document.add(table); - } - } - - if(reportPreferences.isIncludeCategoryBudgets()) - { - document.add(Chunk.NEWLINE); - document.add(new Paragraph(Localization.getString(Strings.TITLE_CATEGORY_BUDGETS), smallHeaderFont)); - document.add(Chunk.NEWLINE); - - PdfPTable table = generateCategoryBudgets(); - if(table != null) - { - document.add(table); - } - } - - document.close(); - } - - private PdfPTable generateCategoryBudgets() - { - PdfPTable table = new PdfPTable(2); - table.setWidthPercentage(100); - Font font = FontFactory.getFont(FONT, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 8, Font.NORMAL, BaseColor.BLACK); - - //header cells - PdfPCell cellHeaderCategory = new PdfPCell(new Phrase(Localization.getString(Strings.TITLE_CATEGORY), font)); - cellHeaderCategory.setBackgroundColor(GrayColor.LIGHT_GRAY); - cellHeaderCategory.setHorizontalAlignment(Element.ALIGN_CENTER); - table.addCell(cellHeaderCategory); - PdfPCell cellHeaderAmount = new PdfPCell(new Phrase(Localization.getString(Strings.TITLE_AMOUNT), font)); - cellHeaderAmount.setBackgroundColor(GrayColor.LIGHT_GRAY); - cellHeaderAmount.setHorizontalAlignment(Element.ALIGN_CENTER); - table.addCell(cellHeaderAmount); - - for(CategoryBudget budget : categoryBudgets) - { - PdfPCell cellName = new PdfPCell(new Phrase(budget.getCategory().getName(), font)); - cellName.setBackgroundColor(new BaseColor(Color.WHITE)); - cellName.setHorizontalAlignment(Element.ALIGN_CENTER); - cellName.setVerticalAlignment(Element.ALIGN_MIDDLE); - table.addCell(cellName); - - PdfPCell cellAmount = new PdfPCell(new Phrase(Helpers.getCurrencyString(budget.getBudget() / 100.0, currency), font)); - cellAmount.setBackgroundColor(new BaseColor(Color.WHITE)); - cellAmount.setHorizontalAlignment(Element.ALIGN_CENTER); - cellAmount.setVerticalAlignment(Element.ALIGN_MIDDLE); - table.addCell(cellAmount); - } - - return table; - } - - private String getProperty(ReportItem reportItem, ColumnType columnType) - { - switch(columnType) - { - case AMOUNT: - return Helpers.getCurrencyString(reportItem.getAmount(), currency); - case CATEGORY: - return reportItem.getCategory().getName(); - case DATE: - return DateTime.parse(reportItem.getDate(), DateTimeFormat.forPattern("YYYY-MM-dd")).toString("dd.MM.YYYY"); - case DESCRIPTION: - return reportItem.getDescription(); - case TAGS: - return reportItem.getTags(); - case NAME: - return reportItem.getName(); - case POSITION: - return String.valueOf(reportItem.getPosition()); - case RATING: - return reportItem.getAmount() > 0 ? "+" : "-"; - case REPEATING: - if(reportItem.getRepeating()) - { - return Localization.getString(Strings.REPORT_REPEATING_YES); - } - else - { - return Localization.getString(Strings.REPORT_REPEATING_NO); - } - default: - return null; - } - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportItem.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportItem.java deleted file mode 100644 index c26a6e4f6..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportItem.java +++ /dev/null @@ -1,106 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -import de.deadlocker8.budgetmaster.logic.category.Category; - -public class ReportItem -{ - private int position; - private int amount; - private String date; - private Category category; - private String name; - private String description; - private String tags; - private boolean repeating; - - public ReportItem() - { - - } - - public int getPosition() - { - return position; - } - - public void setPosition(int position) - { - this.position = position; - } - - public int getAmount() - { - return amount; - } - - public void setAmount(int amount) - { - this.amount = amount; - } - - public String getDate() - { - return date; - } - - public void setDate(String date) - { - this.date = date; - } - - public Category getCategory() - { - return category; - } - - public void setCategory(Category category) - { - this.category = category; - } - - public String getName() - { - return name; - } - - public void setName(String name) - { - this.name = name; - } - - public String getDescription() - { - return description; - } - - public void setDescription(String description) - { - this.description = description; - } - - public String getTags() - { - return tags; - } - - public void setTags(String tags) - { - this.tags = tags; - } - - public boolean getRepeating() - { - return repeating; - } - - public void setRepeating(boolean repeating) - { - this.repeating = repeating; - } - - @Override - public String toString() - { - return "ReportItem [position=" + position + ", amount=" + amount + ", date=" + date + ", category=" + category + ", name=" + name + ", description=" + description + ", tags=" + tags + ", repeating=" + repeating + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportPreferences.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportPreferences.java deleted file mode 100644 index e358e1817..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportPreferences.java +++ /dev/null @@ -1,112 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -import de.deadlocker8.budgetmaster.logic.utils.SaveFileType; - -public class ReportPreferences -{ - /* - * VERSIONS - * - * --> 1 - * initial - * - * --> 2 - * added last export folder as reportFolderPath - */ - - @SuppressWarnings("unused") - private final String TYPE = SaveFileType.BUDGETMASTER_REPORT_PREFERENCES.toString(); - private final int VERSION = 2; - private ColumnOrder columnOrder; - private boolean includeBudget; - private boolean splitTable; - private boolean includeCategoryBudgets; - private ReportSorting reportSorting; - private String reportFolderPath; - - public ReportPreferences() - { - - } - - public ReportPreferences(ColumnOrder columnOrder, boolean includeBudget, boolean splitTable, boolean includeCategoryBudgets, ReportSorting reportSorting, String reportFolderPath) - { - this.columnOrder = columnOrder; - this.includeBudget = includeBudget; - this.splitTable = splitTable; - this.includeCategoryBudgets = includeCategoryBudgets; - this.reportSorting = reportSorting; - this.reportFolderPath = reportFolderPath; - } - - public int getVERSION() - { - return VERSION; - } - - public ColumnOrder getColumnOrder() - { - return columnOrder; - } - - public void setColumnOrder(ColumnOrder columnOrder) - { - this.columnOrder = columnOrder; - } - - public boolean isIncludeBudget() - { - return includeBudget; - } - - public void setIncludeBudget(boolean includeBudget) - { - this.includeBudget = includeBudget; - } - - public boolean isSplitTable() - { - return splitTable; - } - - public void setSplitTable(boolean splitTable) - { - this.splitTable = splitTable; - } - - public boolean isIncludeCategoryBudgets() - { - return includeCategoryBudgets; - } - - public void setIncludeCategoryBudgets(boolean includeCategoryBudgets) - { - this.includeCategoryBudgets = includeCategoryBudgets; - } - - public ReportSorting getReportSorting() - { - return reportSorting; - } - - public void setReportSorting(ReportSorting reportSorting) - { - this.reportSorting = reportSorting; - } - - public String getReportFolderPath() - { - return reportFolderPath; - } - - public void setReportFolderPath(String reportFolderPath) - { - this.reportFolderPath = reportFolderPath; - } - - @Override - public String toString() - { - return "ReportPreferences [VERSION=" + VERSION + ", columnOrder=" + columnOrder + ", includeBudget=" + includeBudget + ", splitTable=" + splitTable + ", includeCategoryBudgets=" + includeCategoryBudgets + ", reportSorting=" + reportSorting + ", reportFolderPath=" + reportFolderPath + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportSorting.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportSorting.java deleted file mode 100644 index 3607a97e1..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/report/ReportSorting.java +++ /dev/null @@ -1,46 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.report; - -import javafx.scene.control.TableColumn.SortType; - -public class ReportSorting -{ - private ColumnType columnType; - private SortType sortType; - - public ReportSorting() - { - - } - - public ReportSorting(ColumnType columnType, SortType sortType) - { - this.columnType = columnType; - this.sortType = sortType; - } - - public ColumnType getColumnType() - { - return columnType; - } - - public void setColumnType(ColumnType columnType) - { - this.columnType = columnType; - } - - public SortType getSortType() - { - return sortType; - } - - public void setSortType(SortType sortType) - { - this.sortType = sortType; - } - - @Override - public String toString() - { - return "ReportSorting [columnType=" + columnType + ", sortType=" + sortType + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/search/SearchPreferences.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/search/SearchPreferences.java deleted file mode 100644 index 3c327559e..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/search/SearchPreferences.java +++ /dev/null @@ -1,122 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.search; - -public class SearchPreferences -{ - private String lastQuery; - private boolean searchName; - private boolean searchDescription; - private boolean searchCategorNames; - private boolean searchTags; - private boolean searchAmount; - private int minAmount; - private int maxAmount; - - public SearchPreferences() - { - - } - - public SearchPreferences(String lastQuery, boolean searchName, boolean searchDescription, boolean searchCategorNames, boolean searchTags, boolean searchAmount, int minAmount, int maxAmount) - { - this.lastQuery = lastQuery; - this.searchName = searchName; - this.searchDescription = searchDescription; - this.searchCategorNames = searchCategorNames; - this.searchTags = searchTags; - this.searchAmount = searchAmount; - this.minAmount = minAmount; - this.maxAmount = maxAmount; - } - - public String getLastQuery() - { - return lastQuery; - } - - public void setLastQuery(String lastQuery) - { - this.lastQuery = lastQuery; - } - - public boolean isSearchName() - { - return searchName; - } - - public void setSearchName(boolean searchName) - { - this.searchName = searchName; - } - - public boolean isSearchDescription() - { - return searchDescription; - } - - public void setSearchDescription(boolean searchDescription) - { - this.searchDescription = searchDescription; - } - - public boolean isSearchCategorNames() - { - return searchCategorNames; - } - - public void setSearchCategorNames(boolean searchCategorNames) - { - this.searchCategorNames = searchCategorNames; - } - - public boolean isSearchTags() - { - return searchTags; - } - - public void setSearchTags(boolean searchTags) - { - this.searchTags = searchTags; - } - - public boolean isSearchAmount() - { - return searchAmount; - } - - public void setSearchAmount(boolean searchAmount) - { - this.searchAmount = searchAmount; - } - - public int getMinAmount() - { - return minAmount; - } - - public void setMinAmount(int minAmount) - { - this.minAmount = minAmount; - } - - public int getMaxAmount() - { - return maxAmount; - } - - public void setMaxAmount(int maxAmount) - { - this.maxAmount = maxAmount; - } - - public void searchPreferences(int maxAmount) - { - this.maxAmount = maxAmount; - } - - @Override - public String toString() - { - return "SearchPreferences [lastQuery=" + lastQuery + ", searchName=" + searchName + ", searchDescription=" + searchDescription + ", searchCategorNames=" + searchCategorNames + ", searchTags=" + searchTags + ", searchAmount=" + searchAmount + ", minAmount=" + minAmount + ", maxAmount=" - + maxAmount + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ExceptionHandler.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ExceptionHandler.java deleted file mode 100644 index c22912ac5..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ExceptionHandler.java +++ /dev/null @@ -1,48 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.serverconnection; - -import java.net.UnknownHostException; - -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import tools.Localization; - -public class ExceptionHandler -{ - public static String getMessageForException(Exception e) - { - if(e instanceof ServerConnectionException) - { - return handleServerConnectionException(e); - } - - if(e instanceof UnknownHostException) - { - return Localization.getString(Strings.ERROR_UNKNOWN_HOST); - } - - if(e.getMessage() == null) - { - return Localization.getString(Strings.ERROR_UNKNOWN_ERROR, e.getClass()); - } - - if(e.getMessage().contains("Connection refused")) - { - return Localization.getString(Strings.ERROR_CONNECTION_REFUSED); - } - else if(e.getMessage().contains("HTTPS hostname wrong")) - { - return Localization.getString(Strings.ERROR_HTTPS_HOSTNAME_WRONG); - } - return e.getMessage(); - } - - private static String handleServerConnectionException(Exception e) - { - switch(e.getMessage()) - { - case "400": return Localization.getString(Strings.ERROR_400); - case "401": return Localization.getString(Strings.ERROR_401); - case "500": return Localization.getString(Strings.ERROR_500); - default: return e.getMessage(); - } - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerConnection.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerConnection.java deleted file mode 100644 index 92ea3b1cf..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerConnection.java +++ /dev/null @@ -1,639 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.serverconnection; - -import java.io.BufferedReader; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStreamWriter; -import java.io.PrintWriter; -import java.lang.reflect.Type; -import java.net.URL; -import java.nio.charset.StandardCharsets; -import java.security.cert.X509Certificate; -import java.util.ArrayList; - -import javax.net.ssl.HttpsURLConnection; -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; - -import org.joda.time.DateTime; - -import com.google.gson.Gson; -import com.google.gson.JsonElement; -import com.google.gson.JsonParser; -import com.google.gson.reflect.TypeToken; - -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.category.CategoryBudget; -import de.deadlocker8.budgetmaster.logic.charts.CategoryInOutSum; -import de.deadlocker8.budgetmaster.logic.charts.MonthInOutSum; -import de.deadlocker8.budgetmaster.logic.database.Database; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.PaymentJSONDeserializer; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmaster.logic.updater.VersionInformation; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import tools.Read; - -public class ServerConnection -{ - private Settings settings; - private Gson gson; - - public ServerConnection(Settings settings) throws Exception - { - this.settings = settings; - this.gson = new Gson(); - - TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() - { - public java.security.cert.X509Certificate[] getAcceptedIssuers() - { - return null; - } - - public void checkClientTrusted(X509Certificate[] certs, String authType) - { - } - - public void checkServerTrusted(X509Certificate[] certs, String authType) - { - } - } }; - - // Install the all-trusting trust manager - SSLContext sc = SSLContext.getInstance("SSL"); - sc.init(null, trustAllCerts, new java.security.SecureRandom()); - HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); - - // check whitelist - HttpsURLConnection.setDefaultHostnameVerifier((hostname, sslSession) -> settings.getTrustedHosts().contains(hostname)); - } - - /* - * Category - */ - public ArrayList<Category> getCategories() throws Exception - { - URL url = new URL(settings.getUrl() + "/category?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<Category>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - return new ArrayList<>(); - } - } - - public Category getCategory(int ID) throws Exception - { - URL url = new URL(settings.getUrl() + "/category/single?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&id=" + ID); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Category.class); - } - else - { - return null; - } - } - - public void addCategory(Category category) throws Exception - { - URL url = new URL(settings.getUrl() + "/category?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&name=" + Helpers.getURLEncodedString(category.getName()) + "&color=" + category.getColor().replace("#", "")); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("POST"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void updateCategory(Category category) throws Exception - { - URL url = new URL(settings.getUrl() + "/category?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&id=" + category.getID() + "&name=" + Helpers.getURLEncodedString(category.getName()) + "&color=" + category.getColor().replace("#", "")); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("PUT"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void deleteCategory(int ID) throws Exception - { - URL url = new URL(settings.getUrl() + "/category?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&id=" + ID); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("DELETE"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - /* - * Payment - */ - public ArrayList<NormalPayment> getPayments(int year, int month) throws Exception - { - URL url = new URL(settings.getUrl() + "/payment?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&year=" + year + "&month=" + month); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<NormalPayment>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public ArrayList<RepeatingPaymentEntry> getRepeatingPayments(int year, int month) throws Exception - { - URL url = new URL(settings.getUrl() + "/repeatingpayment?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&year=" + year + "&month=" + month); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<RepeatingPaymentEntry>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public RepeatingPayment getRepeatingPayment(int ID) throws Exception - { - URL url = new URL(settings.getUrl() + "/repeatingpayment/single?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&id=" + ID); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, RepeatingPayment.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public Integer addNormalPayment(NormalPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/payment?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&amount=" + payment.getAmount() + "&date=" + payment.getDate() + "&categoryID=" + payment.getCategoryID() + "&name=" + Helpers.getURLEncodedString(payment.getName()) - + "&description=" + Helpers.getURLEncodedString(payment.getDescription())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("POST"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Integer.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void updateNormalPayment(NormalPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/payment?secret=" + settings.getSecret() + "&id=" + payment.getID() + "&amount=" + payment.getAmount() + "&date=" + payment.getDate() + "&categoryID=" + payment.getCategoryID() + "&name=" + Helpers.getURLEncodedString(payment.getName()) - + "&description=" + Helpers.getURLEncodedString(payment.getDescription())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("PUT"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public Integer addRepeatingPayment(RepeatingPayment payment) throws Exception - { - String repeatEndDate = payment.getRepeatEndDate(); - if(repeatEndDate == null || repeatEndDate.equals("")) - { - // A is placeholder for empty repeatEndDate - repeatEndDate = "A"; - } - - URL url = new URL(settings.getUrl() + "/repeatingpayment?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&amount=" + payment.getAmount() + "&date=" + payment.getDate() + "&categoryID=" + payment.getCategoryID() + "&name=" + Helpers.getURLEncodedString(payment.getName()) - + "&repeatInterval=" + payment.getRepeatInterval() + "&repeatEndDate=" + repeatEndDate + "&repeatMonthDay=" + payment.getRepeatMonthDay() + "&description=" + Helpers.getURLEncodedString(payment.getDescription())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("POST"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Integer.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void deleteNormalPayment(NormalPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/payment?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&id=" + payment.getID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("DELETE"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void deleteRepeatingPayment(RepeatingPaymentEntry payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/repeatingpayment?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&id=" + payment.getRepeatingPaymentID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("DELETE"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public ArrayList<Payment> getPaymentsForSearch(String query, boolean searchName, boolean searchDescription, boolean searchCategoryName, boolean searchTags, boolean searchAmount, int minAmount, int maxAmount) throws Exception - { - String urlString = settings.getUrl() + "/payment/search?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&query=" + Helpers.getURLEncodedString(query); - if(searchName) - { - urlString += "&name=" + 1; - } - - if(searchDescription) - { - urlString += "&description=" + 1; - } - - if(searchCategoryName) - { - urlString += "&categoryName=" + 1; - } - - if(searchTags) - { - urlString += "&tags=" + 1; - } - - if(searchAmount) - { - urlString += "&minAmount=" + minAmount; - urlString += "&maxAmount=" + maxAmount; - } - - URL url = new URL(urlString); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - JsonParser parser = new JsonParser(); - JsonElement resultJSON = parser.parse(result); - - return PaymentJSONDeserializer.deserializePaymentList(resultJSON.getAsJsonObject().get("payments").getAsJsonArray()); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public int getMaxAmount() throws Exception - { - URL url = new URL(settings.getUrl() + "/payment/search/maxAmount?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Integer.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - /* - * CATEGORYBUDGET - */ - public ArrayList<CategoryBudget> getCategoryBudgets(int year, int month) throws Exception - { - URL url = new URL(settings.getUrl() + "/categorybudget?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&year=" + year + "&month=" + month); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<CategoryBudget>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - /* - * REST - */ - public int getRestForAllPreviousMonths(int year, int month) throws Exception - { - URL url = new URL(settings.getUrl() + "/rest?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&year=" + year + "&month=" + month); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Integer.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - /* - * DATABASE - */ - public void deleteDatabase() throws Exception - { - URL url = new URL(settings.getUrl() + "/database?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("DELETE"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public String exportDatabase() throws Exception - { - URL url = new URL(settings.getUrl() + "/database?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - return Read.getStringFromInputStream(httpsCon.getInputStream()); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void importDatabase(Database database) throws Exception - { - String databaseJSON = new Gson().toJson(database); - - URL url = new URL(settings.getUrl() + "/database?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("POST"); - httpsCon.setRequestProperty("Content-Type", "application/json"); - httpsCon.setRequestProperty("Accept", "application/json"); - httpsCon.setDoInput(true); - httpsCon.setDoOutput(true); - PrintWriter writer = new PrintWriter(new OutputStreamWriter(httpsCon.getOutputStream(), StandardCharsets.UTF_8)); - writer.write(databaseJSON); - writer.flush(); - writer.close(); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - /* - * CHARTS - */ - public ArrayList<CategoryInOutSum> getCategoryInOutSumForMonth(DateTime startDate, DateTime endDate) throws Exception - { - URL url = new URL(settings.getUrl() + "/charts/categoryInOutSum?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + - "&startDate=" + startDate.toString("yyyy-MM-dd") + - "&endDate=" + endDate.toString("yyyy-MM-dd")); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<CategoryInOutSum>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - return null; - } - } - - public ArrayList<MonthInOutSum> getMonthInOutSum(DateTime startDate, DateTime endDate) throws Exception - { - URL url = new URL(settings.getUrl() + "/charts/monthInOutSum?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + - "&startDate=" + startDate.toString("yyyy-MM-dd") + - "&endDate=" + endDate.toString("yyyy-MM-dd")); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<MonthInOutSum>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - return null; - } - } - - /* - * INFORMATION - */ - public ServerInformation getServerInfo() throws Exception - { - URL url = new URL(settings.getUrl() + "/info?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, ServerInformation.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public VersionInformation getServerVersion() throws Exception - { - URL url = new URL(settings.getUrl() + "/version?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, VersionInformation.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void deleteLog() throws Exception - { - URL url = new URL(settings.getUrl() + "/log?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("DELETE"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void shutdownServer() throws Exception - { - URL url = new URL(settings.getUrl() + "/shutdown?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("GET"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerConnectionException.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerConnectionException.java deleted file mode 100644 index 4415d8625..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerConnectionException.java +++ /dev/null @@ -1,31 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.serverconnection; - -public class ServerConnectionException extends Exception -{ - private static final long serialVersionUID = 2784475774757068549L; - - public ServerConnectionException() - { - super(); - } - - public ServerConnectionException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) - { - super(message, cause, enableSuppression, writableStackTrace); - } - - public ServerConnectionException(String message, Throwable cause) - { - super(message, cause); - } - - public ServerConnectionException(String message) - { - super(message); - } - - public ServerConnectionException(Throwable cause) - { - super(cause); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerInformation.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerInformation.java deleted file mode 100644 index d4172b446..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerInformation.java +++ /dev/null @@ -1,84 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.serverconnection; - -import de.deadlocker8.budgetmaster.logic.updater.VersionInformation; - -public class ServerInformation -{ - private String databaseUrl; - private String databaseName; - private String databaseUsername; - private int serverPort; - private String keystorePath; - private VersionInformation versionInfo; - - public ServerInformation() - { - - } - - public String getDatabaseUrl() - { - return databaseUrl; - } - - public void setDatabaseUrl(String databaseUrl) - { - this.databaseUrl = databaseUrl; - } - - public String getDatabaseName() - { - return databaseName; - } - - public void setDatabaseName(String databaseName) - { - this.databaseName = databaseName; - } - - public String getDatabaseUsername() - { - return databaseUsername; - } - - public void setDatabaseUsername(String databaseUsername) - { - this.databaseUsername = databaseUsername; - } - - public int getServerPort() - { - return serverPort; - } - - public void setServerPort(int serverPort) - { - this.serverPort = serverPort; - } - - public String getKeystorePath() - { - return keystorePath; - } - - public void setKeystorePath(String keystorePath) - { - this.keystorePath = keystorePath; - } - - public VersionInformation getVersionInfo() - { - return versionInfo; - } - - public void setVersionInfo(VersionInformation versionInfo) - { - this.versionInfo = versionInfo; - } - - @Override - public String toString() - { - return "ServerInfo [databaseUrl=" + databaseUrl + ", databaseName=" + databaseName + ", databaseUsername=" + databaseUsername + ", serverPort=" + serverPort + ", keystorePath=" + keystorePath + ", versionInfo=" + versionInfo + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerTagConnection.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerTagConnection.java deleted file mode 100644 index 858de8646..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/serverconnection/ServerTagConnection.java +++ /dev/null @@ -1,309 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.serverconnection; - -import java.io.BufferedReader; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.lang.reflect.Type; -import java.net.URL; -import java.security.cert.X509Certificate; -import java.util.ArrayList; - -import javax.net.ssl.HttpsURLConnection; -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; - -import com.google.gson.Gson; -import com.google.gson.reflect.TypeToken; - -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import tools.Read; - -public class ServerTagConnection -{ - private Settings settings; - private Gson gson; - - public ServerTagConnection(Settings settings) throws Exception - { - this.settings = settings; - this.gson = new Gson(); - - TrustManager[] trustAllCerts = new TrustManager[] { new X509TrustManager() - { - public java.security.cert.X509Certificate[] getAcceptedIssuers() - { - return null; - } - - public void checkClientTrusted(X509Certificate[] certs, String authType) - { - } - - public void checkServerTrusted(X509Certificate[] certs, String authType) - { - } - } }; - - // Install the all-trusting trust manager - SSLContext sc = SSLContext.getInstance("SSL"); - sc.init(null, trustAllCerts, new java.security.SecureRandom()); - HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); - - // check whitelist - HttpsURLConnection.setDefaultHostnameVerifier((hostname, sslSession) -> settings.getTrustedHosts().contains(hostname)); - } - - public ArrayList<Tag> getTags() throws Exception - { - URL url = new URL(settings.getUrl() + "/tag?secret=" + Helpers.getURLEncodedString(settings.getSecret())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<Tag>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - return new ArrayList<>(); - } - } - - public Tag getTag(int ID) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/single?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&id=" + ID); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Tag.class); - } - else - { - return null; - } - } - - public Tag getTag(String name) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/single/byName?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&name=" + Helpers.getURLEncodedString(name)); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Tag.class); - } - else - { - return null; - } - } - - public void addTag(Tag tag) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&name=" + Helpers.getURLEncodedString(tag.getName())); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("POST"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void deleteTag(int ID) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&id=" + ID); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("DELETE"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - /* - * tag match - */ - public boolean isMatchExistingForPayment(int tagID, NormalPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/match/normal?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&tagID=" + tagID + "&paymentID=" + payment.getID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Boolean.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public boolean isMatchExistingForRepeatingPayment(int tagID, RepeatingPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/match/repeating?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&tagID=" + tagID + "&repeatingPaymentID=" + payment.getID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - return gson.fromJson(result, Boolean.class); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void addTagMatchForPayment(int tagID, NormalPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/match/normal?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&tagID=" + tagID + "&paymentID=" + payment.getID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("POST"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void addTagMatchForRepeatingPayment(int tagID, RepeatingPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/match/repeating?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&tagID=" + tagID + "&repeatingPaymentID=" + payment.getID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("POST"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void deleteTagMatchForPayment(int tagID, NormalPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/match/normal?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&tagID=" + tagID + "&paymentID=" + payment.getID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("DELETE"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public void deleteTagMatchForRepeatingPayment(int tagID, RepeatingPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/match/repeating?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&tagID=" + tagID + "&repeatingPaymentID=" + payment.getID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setRequestMethod("DELETE"); - httpsCon.setDoInput(true); - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - InputStream stream = httpsCon.getInputStream(); - BufferedReader reader = new BufferedReader(new InputStreamReader(stream)); - reader.close(); - } - else - { - throw new ServerConnectionException(String.valueOf(httpsCon.getResponseCode())); - } - } - - public ArrayList<Tag> getAllTagsForPayment(NormalPayment payment) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/match/all/normal?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&paymentID=" + payment.getID()); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<Tag>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - return new ArrayList<>(); - } - } - - public ArrayList<Tag> getAllTagsForRepeatingPayment(int repeatingPaymentID) throws Exception - { - URL url = new URL(settings.getUrl() + "/tag/match/all/repeating?secret=" + Helpers.getURLEncodedString(settings.getSecret()) + "&repeatingPaymentID=" + repeatingPaymentID); - HttpsURLConnection httpsCon = (HttpsURLConnection)url.openConnection(); - httpsCon.setDoOutput(true); - httpsCon.setRequestMethod("GET"); - - if(httpsCon.getResponseCode() == HttpsURLConnection.HTTP_OK) - { - String result = Read.getStringFromInputStream(httpsCon.getInputStream()); - // required by GSON - Type listType = new TypeToken<ArrayList<Tag>>() - { - }.getType(); - return gson.fromJson(result, listType); - } - else - { - return new ArrayList<>(); - } - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/Tag.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/Tag.java deleted file mode 100644 index a9a23fc0f..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/Tag.java +++ /dev/null @@ -1,39 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.tag; - -public class Tag -{ - private int ID; - private String name; - - public Tag(int ID, String name) - { - this.ID = ID; - this.name = name; - } - - public int getID() - { - return ID; - } - - public void setID(int ID) - { - this.ID = ID; - } - - public String getName() - { - return name; - } - - public void setName(String name) - { - this.name = name; - } - - @Override - public String toString() - { - return "Tag [ID=" + ID + ", Name=" + name + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagCache.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagCache.java deleted file mode 100644 index 12638c224..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagCache.java +++ /dev/null @@ -1,67 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.tag; - -import java.util.ArrayList; -import java.util.HashMap; - -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; - -public class TagCache -{ - private HashMap<Integer, ArrayList<Tag>> normalPaymentTagCache; - private HashMap<Integer, ArrayList<Tag>> repeatingPaymentTagCache; - - public TagCache() - { - clear(); - } - - public void clear() - { - normalPaymentTagCache = new HashMap<>(); - repeatingPaymentTagCache = new HashMap<>(); - } - - public void addTags(Payment payment, ArrayList<Tag> tags) - { - if(payment instanceof RepeatingPaymentEntry) - { - repeatingPaymentTagCache.put(((RepeatingPaymentEntry)payment).getRepeatingPaymentID(), tags); - } - else - { - normalPaymentTagCache.put(payment.getID(), tags); - } - } - - public ArrayList<Tag> getTags(Payment payment) - { - if(payment instanceof RepeatingPaymentEntry) - { - RepeatingPaymentEntry repeatingPayment = (RepeatingPaymentEntry)payment; - if(repeatingPaymentTagCache.containsKey(repeatingPayment.getRepeatingPaymentID())) - { - return repeatingPaymentTagCache.get(repeatingPayment.getRepeatingPaymentID()); - } - } - else - { - if(normalPaymentTagCache.containsKey(payment.getID())) - { - return normalPaymentTagCache.get(payment.getID()); - } - } - - return null; - } - - public HashMap<Integer, ArrayList<Tag>> getNormalPaymentTagCache() - { - return normalPaymentTagCache; - } - - public HashMap<Integer, ArrayList<Tag>> getRepeatingPaymentTagCache() - { - return repeatingPaymentTagCache; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagHandler.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagHandler.java deleted file mode 100644 index a6fb9dfe3..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagHandler.java +++ /dev/null @@ -1,74 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.tag; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerTagConnection; - -public class TagHandler -{ - private Settings settings; - private TagCache tagCache; - - public TagHandler(Settings settings) - { - this.settings = settings; - this.tagCache = new TagCache(); - } - - public ArrayList<Tag> getTags(Payment payment) throws Exception - { - ArrayList<Tag> tags = new ArrayList<>(); - ArrayList<Tag> cachedTags = tagCache.getTags(payment); - if(cachedTags != null) - { - return cachedTags; - } - - ServerTagConnection connection = new ServerTagConnection(settings); - - if(payment instanceof NormalPayment) - { - tags.addAll(connection.getAllTagsForPayment((NormalPayment)payment)); - } - else - { - tags.addAll(connection.getAllTagsForRepeatingPayment(((RepeatingPaymentEntry)payment).getRepeatingPaymentID())); - } - - tagCache.addTags(payment, tags); - - return tags; - } - - public String getTagsAsString(Payment payment) throws Exception - { - ArrayList<Tag> tags = getTags(payment); - StringBuilder sb = new StringBuilder(); - for(int i = 0; i < tags.size(); i++) - { - sb.append(tags.get(i).getName()); - if(i != tags.size()-1) - { - sb.append(", "); - } - } - - return sb.toString(); - } - - public ArrayList<Integer> getTagIDs(Payment payment) throws Exception - { - ArrayList<Tag> tags = getTags(payment); - ArrayList<Integer> ids = new ArrayList<>(); - for(Tag currentTag : tags) - { - ids.add(currentTag.getID()); - } - - return ids; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagMatch.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagMatch.java deleted file mode 100644 index 7177bee48..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/tag/TagMatch.java +++ /dev/null @@ -1,59 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.tag; - -import de.deadlocker8.budgetmaster.logic.database.DatabaseImportExport; - -@DatabaseImportExport -public class TagMatch -{ - private int tagID; - private int paymentID; - private int repeatingPaymentID; - - public TagMatch(int tagID, int paymentID, int repeatingPaymentID) - { - this.tagID = tagID; - this.paymentID = paymentID; - this.repeatingPaymentID = repeatingPaymentID; - } - - public TagMatch() - { - - } - - public int getTagID() - { - return tagID; - } - - public void setTagID(int tagID) - { - this.tagID = tagID; - } - - public int getPaymentID() - { - return paymentID; - } - - public void setPaymentID(int paymentID) - { - this.paymentID = paymentID; - } - - public int getRepeatingPaymentID() - { - return repeatingPaymentID; - } - - public void setRepeatingPaymentID(int repeatingPaymentID) - { - this.repeatingPaymentID = repeatingPaymentID; - } - - @Override - public String toString() - { - return "TagMatch [tagID=" + tagID + ", paymentID=" + paymentID + ", repeatingPaymentID=" + repeatingPaymentID + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/updater/Updater.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/updater/Updater.java deleted file mode 100644 index 1eb50a9c7..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/updater/Updater.java +++ /dev/null @@ -1,141 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.updater; - -import java.io.BufferedReader; -import java.io.File; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.net.URL; -import java.net.URLConnection; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.nio.file.StandardCopyOption; -import java.util.Properties; - -import de.deadlocker8.budgetmaster.logic.utils.Strings; -import logger.Logger; -import nativeWindows.NativeLauncher; -import tools.Localization; -import tools.OS; -import tools.OS.OSType; -import tools.PathUtils; - -public class Updater -{ - private VersionInformation latestVersion; - private static final String LATEST_VERSION_INFO_URL = "https://raw.githubusercontent.com/deadlocker8/BudgetMaster/master/src/de/deadlocker8/budgetmaster/resources/languages/_de.properties"; - private static final String BUILD_FOLDER = "https://github.com/deadlocker8/BudgetMaster/raw/master/build/"; - - public Updater() - { - latestVersion = new VersionInformation(0, "-", "-"); - } - - private VersionInformation getLatestVersionInformationFromServer() throws IOException - { - URL webseite = new URL(LATEST_VERSION_INFO_URL); - URLConnection connection = webseite.openConnection(); - - BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(connection.getInputStream())); - - VersionInformation versionInfo = new VersionInformation(); - Properties properties = new Properties(); - properties.load(bufferedReader); - versionInfo.setVersionCode(Integer.parseInt(properties.getProperty("version.code", "-1"))); - versionInfo.setVersionName(properties.getProperty("version.name")); - versionInfo.setDate(properties.getProperty("version.date")); - - if(!versionInfo.isComplete()) - throw new IllegalArgumentException("VersionInformation not complete"); - - return versionInfo; - } - - public boolean isUpdateAvailable(int currentVersionCode) throws IOException - { - latestVersion = getLatestVersionInformationFromServer(); - return currentVersionCode < latestVersion.getVersionCode(); - } - - public VersionInformation getLatestVersion() - { - return latestVersion; - } - - private void downloadLatestUpdater(OSType osType) throws IOException - { - //download into temp directory and file - String ending = "jar"; - if(osType == OSType.Windows) - { - ending = "exe"; - } - - Path target = Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/Updater." + ending); - download(BUILD_FOLDER + "Updater." + ending, target); - Logger.debug("Successfully downloaded latest updater"); - } - - private File getCurrentExecutableName() - { - return new File(Updater.class.getProtectionDomain().getCodeSource().getLocation().getPath()); - } - - - public void downloadLatestVersion() throws Exception - { - File currentExecutable = getCurrentExecutableName(); - String currentFileName = currentExecutable.getName(); - - //check if BudgetMaster is running from executable - //no updating procedure if running from source - if(!currentFileName.contains(".")) - { - Logger.debug("Update procedure will be skipped because BudgetMaster is running from source"); - return; - } - - PathUtils.checkFolder(new File(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER))); - - //download latest updater.jar - - downloadLatestUpdater(OS.getType()); - - //download into temp directory and file - Path target; - if(currentFileName.endsWith(".exe")) - { - target = Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/update_BudgetMaster.exe"); - download(BUILD_FOLDER + "BudgetMaster.exe", target); - Logger.debug("Successfully downloaded latest EXE"); - } - else - { - target = Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/update_BudgetMasterClient.jar"); - download(BUILD_FOLDER + "BudgetMasterClient.jar", target); - Logger.debug("Successfully downloaded latest JAR"); - } - - String params = target.toString().replace(" ", "%20") + " " + currentExecutable.getAbsolutePath().replace(" ", "%20") + " " + Localization.getString(Strings.APP_NAME); - Logger.debug(params); - - if(OS.getType() == OSType.Windows) - { - NativeLauncher.executeAsAdministrator(Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/Updater.exe").toString(), params); - } - else - { - ProcessBuilder pb = new ProcessBuilder("java", "-jar", Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/Updater.jar").toString(), target.toString().replace(" ", "%20"), currentExecutable.toString().replace(" ", "%20"), Localization.getString(Strings.APP_NAME)); - pb.start(); - } - System.exit(0); - } - - public void download(String url, Path target) throws IOException - { - URL website = new URL(url); - InputStream in = website.openStream(); - Files.copy(in, target, StandardCopyOption.REPLACE_EXISTING); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/updater/VersionInformation.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/updater/VersionInformation.java deleted file mode 100644 index 4af7faf03..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/updater/VersionInformation.java +++ /dev/null @@ -1,61 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.updater; - -public class VersionInformation -{ - private int versionCode; - private String versionName; - private String date; - - public VersionInformation(int versionCode, String versionName, String date) - { - this.versionCode = versionCode; - this.versionName = versionName; - this.date = date; - } - - public VersionInformation() - { - this.versionCode = -1; - } - - public int getVersionCode() - { - return versionCode; - } - - public void setVersionCode(int versionCode) - { - this.versionCode = versionCode; - } - - public String getVersionName() - { - return versionName; - } - - public void setVersionName(String versionName) - { - this.versionName = versionName; - } - - public String getDate() - { - return date; - } - - public void setDate(String date) - { - this.date = date; - } - - public boolean isComplete() - { - return versionCode != -1 && versionName != null && date != null; - } - - @Override - public String toString() - { - return "VersionInformation [versionCode=" + versionCode + ", versionName=" + versionName + ", date=" + date + "]"; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Colors.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Colors.java deleted file mode 100644 index 1403601fb..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Colors.java +++ /dev/null @@ -1,36 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.utils; - -import javafx.scene.paint.Color; - -public class Colors -{ - public static final Color TEXT = Color.web("#212121"); - public static final Color TEXT_RED = Color.web("#CC0000"); - public static final Color INCOME = Color.web("#22BAD9"); - public static final Color PAYMENT = Color.web("#F2612D"); - public static final Color BACKGROUND = Color.web("#F4F4F4"); - public static final Color BACKGROUND_MAIN = Color.web("#DDDDDD"); - public static final Color BACKGROUND_BUTTON_BLUE = Color.web("#2E79B9"); - public static final Color BACKGROUND_BUTTON_DARK_BLUE = Color.web("#246091"); - public static final Color BACKGROUND_BUTTON_RED = Color.web("#FF5047"); - public static final Color BACKGROUND_NOTIFICATION = Color.web("#323232"); - public static final Color BACKGROUND_REPORT_TABLE_HEADER_DISABLED = Color.SALMON; - public static final Color BACKGROUND_CHART_LEGEND = Color.web("#DDDDDD"); - - // CATEGORIES - public static final Color CATEGORIES_LIGHT_GREY = Color.web("#EEEEEE"); - public static final Color CATEGORIES_GREY = Color.web("#888888"); - public static final Color CATEGORIES_DARK_GREY = Color.web("#333333"); - public static final Color CATEGORIES_LIGHT_YELLOW = Color.rgb(255,241,119); - public static final Color CATEGORIES_YELLOW = Color.rgb(255,204,0); - public static final Color CATEGORIES_ORANGE = Color.rgb(255,149,0); - public static final Color CATEGORIES_RED = Color.rgb(255,59,48); - public static final Color CATEGORIES_DARK_RED = Color.rgb(169,3,41); - public static final Color CATEGORIES_PINK = Color.rgb(255,81,151); - public static final Color CATEGORIES_PURPLE = Color.rgb(155,89,182); - public static final Color CATEGORIES_DARK_PURPLE = Color.rgb(88,86,214); - public static final Color CATEGORIES_BLUE = Color.rgb(0,122,250); - public static final Color CATEGORIES_LIGHT_BLUE = Color.rgb(90,200,250); - public static final Color CATEGORIES_LIGHT_GREEN = Color.rgb(76,217,100); - public static final Color CATEGORIES_DARK_GREEN = Color.rgb(46,124,43); -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/FileHelper.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/FileHelper.java deleted file mode 100644 index b6f809e40..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/FileHelper.java +++ /dev/null @@ -1,106 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.utils; - -import java.io.BufferedReader; -import java.io.File; -import java.io.IOException; -import java.io.Reader; -import java.io.Writer; -import java.nio.charset.Charset; -import java.nio.file.Files; -import java.nio.file.Paths; -import java.util.ArrayList; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.Settings; -import de.deadlocker8.budgetmaster.logic.database.Database; -import de.deadlocker8.budgetmaster.logic.database.OldDatabase; -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmaster.logic.tag.TagMatch; -import tools.Localization; -import tools.PathUtils; - -@SuppressWarnings("deprecation") -public class FileHelper -{ - public static Settings loadSettings() - { - Settings settings; - try - { - Gson gson = new Gson(); - Reader reader = Files.newBufferedReader(Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/settings.json"), Charset.forName("UTF-8")); - settings = gson.fromJson(reader, Settings.class); - reader.close(); - return settings; - } - catch(Exception e) - { - return null; - } - } - - public static void saveSettings(Settings settings) throws IOException - { - Gson gson = new Gson(); - String jsonString = gson.toJson(settings); - PathUtils.checkFolder(new File(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER))); - Writer writer = Files.newBufferedWriter(Paths.get(PathUtils.getOSindependentPath() + Localization.getString(Strings.FOLDER) + "/settings.json"), Charset.forName("UTF-8")); - writer.write(jsonString); - writer.close(); - } - - public static Database loadDatabaseJSON(File file) throws IOException - { - Gson gson = new Gson(); - BufferedReader reader = Files.newBufferedReader(Paths.get(file.getAbsolutePath()), Charset.forName("UTF-8")); - - StringBuilder sb = new StringBuilder(); - String line; - while((line = reader.readLine()) != null) - { - sb.append(line); - } - - reader.close(); - String jsonString = sb.toString(); - if(jsonString.contains("BUDGETMASTER_DATABASE")) - { - if(jsonString.contains("VERSION")) - { - int start = jsonString.indexOf("\"VERSION\": "); - start = start + 11; - int version = Integer.parseInt(jsonString.substring(start, start + 1)); - Database database; - - switch(version) - { - case 2: database = gson.fromJson(jsonString, Database.class); - break; - default: return loadOldDatabase(gson, jsonString); - } - return database; - } - } - - return loadOldDatabase(gson, jsonString); - } - - private static Database loadOldDatabase(Gson gson, String jsonString) throws IOException - { - // database version = 1 (prior to BudgetMaster 1.6.0) - OldDatabase olDatabase = gson.fromJson(jsonString, OldDatabase.class); - return new Database(olDatabase.getCategories(), - olDatabase.getNormalPayments(), - olDatabase.getRepeatingPayments(), - new ArrayList<Tag>(), - new ArrayList<TagMatch>()); - } - - public static void saveDatabaseJSON(File file, String databaseJSON) throws IOException - { - Writer writer = Files.newBufferedWriter(Paths.get(file.getAbsolutePath()), Charset.forName("UTF-8")); - writer.write(databaseJSON); - writer.close(); - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Fonts.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Fonts.java deleted file mode 100644 index d69997c9f..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Fonts.java +++ /dev/null @@ -1,6 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.utils; - -public class Fonts -{ - public static final String OPEN_SANS = "/de/deadlocker8/budgetmaster/resources/fonts/OpenSans-Regular.ttf"; -} diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Helpers.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Helpers.java deleted file mode 100644 index 6bd8a0a6c..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Helpers.java +++ /dev/null @@ -1,112 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.utils; - -import java.io.UnsupportedEncodingException; -import java.net.URLEncoder; -import java.text.DecimalFormat; -import java.time.LocalDate; -import java.time.format.DateTimeFormatter; -import java.util.ArrayList; - -import javafx.scene.paint.Color; -import tools.Localization; - -public class Helpers -{ - public static final DecimalFormat NUMBER_FORMAT = new DecimalFormat("0.00"); - public static final String SALT = "ny9/Y+G|WrJ,82|oIYQQ X %i-sq#4,uA-qKPtwFPnw+s(k2`rV)^-a1|t{D3Z>S"; - public static final String ROADMAP_URL = "https://deadlocker.thecodelabs.de/roadmap/php/index.php?id=1"; - - public static String getCurrencyString(int amount, String currency) - { - return String.valueOf(NUMBER_FORMAT.format(amount / 100.0).replace(".", ",")) + " " + currency; - } - - public static String getCurrencyString(double amount, String currency) - { - return String.valueOf(NUMBER_FORMAT.format(amount).replace(".", ",")) + " " + currency; - } - - public static String getURLEncodedString(String input) - { - try - { - return URLEncoder.encode(input, "UTF-8"); - } - catch(UnsupportedEncodingException e) - { - return input; - } - } - - public static String getDateString(LocalDate date) - { - if(date == null) - { - return ""; - } - DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); - return date.format(formatter); - } - - public static ArrayList<String> getMonthList() - { - ArrayList<String> monthNames = new ArrayList<>(); - monthNames.add(Localization.getString(Strings.MONTH_JANUARY)); - monthNames.add(Localization.getString(Strings.MONTH_FEBRUARY)); - monthNames.add(Localization.getString(Strings.MONTH_MARCH)); - monthNames.add(Localization.getString(Strings.MONTH_APRIL)); - monthNames.add(Localization.getString(Strings.MONTH_MAY)); - monthNames.add(Localization.getString(Strings.MONTH_JUNE)); - monthNames.add(Localization.getString(Strings.MONTH_JULY)); - monthNames.add(Localization.getString(Strings.MONTH_AUGUST)); - monthNames.add(Localization.getString(Strings.MONTH_SEPTEMBER)); - monthNames.add(Localization.getString(Strings.MONTH_OCTOBER)); - monthNames.add(Localization.getString(Strings.MONTH_NOVEMBER)); - monthNames.add(Localization.getString(Strings.MONTH_DECEMBER)); - return monthNames; - } - - public static ArrayList<String> getYearList() - { - ArrayList<String> years = new ArrayList<>(); - for(int i = 2000; i < 2100; i++) - { - years.add(String.valueOf(i)); - } - return years; - } - - public static ArrayList<Color> getCategoryColorList() - { - ArrayList<Color> colors = new ArrayList<>(); - colors.add(Colors.CATEGORIES_LIGHT_GREY); - colors.add(Colors.CATEGORIES_GREY); - colors.add(Colors.CATEGORIES_DARK_GREY); - colors.add(Colors.CATEGORIES_LIGHT_YELLOW); - colors.add(Colors.CATEGORIES_YELLOW); - colors.add(Colors.CATEGORIES_ORANGE); - colors.add(Colors.CATEGORIES_RED); - colors.add(Colors.CATEGORIES_DARK_RED); - colors.add(Colors.CATEGORIES_PINK); - colors.add(Colors.CATEGORIES_PURPLE); - colors.add(Colors.CATEGORIES_DARK_PURPLE); - colors.add(Colors.CATEGORIES_BLUE); - colors.add(Colors.CATEGORIES_LIGHT_BLUE); - colors.add(Colors.CATEGORIES_LIGHT_GREEN); - colors.add(Colors.CATEGORIES_DARK_GREEN); - - return colors; - } - - /** - * Replaces line breaks and tabs with spaces - * @param text - * @return String - */ - public static String getFlatText(String text) - { - text = text.replace("\n", " "); - text = text.replace("\t", " "); - return text; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/LanguageType.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/LanguageType.java deleted file mode 100644 index f9ed0a080..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/LanguageType.java +++ /dev/null @@ -1,35 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.utils; - -import java.util.Locale; - -public enum LanguageType -{ - GERMAN("Deutsch", Locale.GERMAN, "german"), - ENGLISH("English", Locale.ENGLISH, "english"); - - private String name; - private Locale locale; - private String iconName; - - private LanguageType(String name, Locale locale, String iconName) - { - this.name = name; - this.locale = locale; - this.iconName = iconName; - } - - public String getName() - { - return name; - } - - public Locale getLocale() - { - return locale; - } - - public String getIconName() - { - return iconName; - } -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/SaveFileType.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/SaveFileType.java deleted file mode 100644 index a5cf884f0..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/SaveFileType.java +++ /dev/null @@ -1,8 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.utils; - -public enum SaveFileType -{ - BUDGETMASTER_DATABASE, - BUDGETMASTER_REPORT_PREFERENCES, - BUDGETMASTER_SETTINGS -} \ No newline at end of file diff --git a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Strings.java b/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Strings.java deleted file mode 100644 index f972c712b..000000000 --- a/BudgetMasterCore/src/main/java/de/deadlocker8/budgetmaster/logic/utils/Strings.java +++ /dev/null @@ -1,240 +0,0 @@ -package de.deadlocker8.budgetmaster.logic.utils; - -public class Strings -{ - //APP_INFO - public static final String APP_NAME = "app.name"; - public static final String VERSION_CODE = "version.code"; - public static final String VERSION_NAME = "version.name"; - public static final String VERSION_DATE = "version.date"; - public static final String AUTHOR = "author"; - public static final String CREDITS = "credits"; - public static final String FOLDER = "folder"; - public static final String ROADMAP_URL = "roadmap.url"; - public static final String GITHUB_URL = "github.url"; - - //TITLE - public static final String TITLE_INCOMES = "title.incomes"; - public static final String TITLE_INCOME = "title.income"; - public static final String TITLE_PAYMENTS = "title.payments"; - public static final String TITLE_PAYMENT = "title.payment"; - public static final String TITLE_CATEGORY = "title.category"; - public static final String TITLE_CATEGORIES = "title.categories"; - public static final String TITLE_CATEGORY_BUDGETS = "title.category.budgets"; - public static final String TITLE_AMOUNT = "title.amount"; - public static final String TITLE_INFO = "title.info"; - public static final String TITLE_WARNING = "title.warning"; - public static final String TITLE_ERROR = "title.error"; - public static final String TITLE_CATEGORY_NEW = "title.category.new"; - public static final String TITLE_CATEGORY_EDIT = "title.category.edit"; - public static final String TITLE_CHART_EXPORT = "title.chart.export"; - public static final String TITLE_MODAL = "title.modal"; - public static final String TITLE_PAYMENT_EDIT = "title.payment.edit"; - public static final String TITLE_PAYMENT_NEW = "title.payment.new"; - public static final String TITLE_FILTER = "title.filter"; - public static final String TITLE_SEARCH = "title.search"; - public static final String TITLE_REPORT_SAVE = "title.report.save"; - public static final String TITLE_DATABASE_EXPORT = "title.database.export"; - public static final String TITLE_DATABASE_IMPORT = "title.database.import"; - public static final String TITLE_DATEPICKER = "title.datepicker"; - public static final String TITLE_TAGS = "title.tags"; - - //LOAD - public static final String LOAD_CHARTS = "load.charts"; - public static final String LOAD_DATA = "load.data"; - public static final String LOAD_REPORT_TAB = "load.report.tab"; - public static final String LOAD_REPORT = "load.report"; - public static final String LOAD_DATABASE_EXPORT = "load.database.export"; - public static final String LOAD_DATABASE_IMPORT = "load.database.import"; - public static final String LOAD_DATABASE_DELETE = "load.database.delete"; - public static final String LOAD_UPDATE = "load.update"; - public static final String LOAD_SEARCH = "load.search"; - public static final String LOAD_LOCAL_SERVER = "load.local.server"; - public static final String LOAD_DOWNLOAD_LOCAL_SERVER = "load.download.local.server"; - public static final String LOAD_LOCAL_SERVER_CONNECT = "load.local.server.connect"; - public static final String LOAD_LOCAL_SERVER_RETRY = "load.local.server.retry"; - - - //MISC - public static final String CATEGORY_NONE = "category.none"; - public static final String CATEGORY_REST = "category.rest"; - public static final String TOOLTIP_CHART_CATEGORIES = "tooltip.chart.categories"; - public static final String CHART_MONTH_LINE_SUM = "chart.month.line.sum"; - public static final String CATEGORIES_PLACEHOLDER = "categories.placeholder"; - public static final String CHART_CATEGORIES_TITLE_INCOMES = "chart.categories.title.incomes"; - public static final String CHART_CATEGORIES_TITLE_PAYMENTS = "chart.categories.title.payments"; - public static final String OK = "ok"; - public static final String CANCEL = "cancel"; - public static final String HOME_PLACEHOLDER = "home.placeholder"; - public static final String HOME_BUDGET = "home.budget"; - public static final String PAYMENTS_PLACEHOLDER = "payments.placeholder"; - public static final String URL_PLACEHOLDER = "url.placeholder"; - public static final String CURRENCY_PLACEHOLDER = "currency.placeholder"; - public static final String TRUSTED_HOSTS_PLACEHOLDER = "trusted.hosts.placeholder"; - public static final String VERSION = "version"; - public static final String UNDEFINED = "undefined"; - public static final String TAGFIELD_PLACEHOLDER = "tagfield.placeholder"; - public static final String SHORTCUT_DEV_CONSOLE = "shortcut.dev.console"; - public static final String LOCAL_SERVER_STATUS_OK = "local.server.status.ok"; - public static final String LOCAL_SERVER_STATUS_NOT_STARTED = "local.server.status.not.started"; - public static final String LOCAL_SERVER_ACTION_NOT_STARTED = "local.server.action.not.started"; - public static final String LOCAL_SERVER_STATUS_NOT_PRESENT = "local.server.status.not.present"; - public static final String LOCAL_SERVER_ACTION_NOT_PRESENT = "local.server.action.not.present"; - public static final String LOCAL_SERVER_STATUS_INCOMPATIBLE = "local.server.status.incompatible"; - public static final String LOCAL_SERVER_ACTION_INCOMPATIBLE = "local.server.action.incompatible"; - - //REPORT - public static final String REPORT_POSITION = "report.position"; - public static final String REPORT_DATE = "report.date"; - public static final String REPORT_REPEATING = "report.repeating"; - public static final String REPORT_CATEGORY = "report.category"; - public static final String REPORT_NAME = "report.name"; - public static final String REPORT_DESCRIPTION = "report.description"; - public static final String REPORT_TAGS = "report.tags"; - public static final String REPORT_RATING = "report.rating"; - public static final String REPORT_AMOUNT = "report.amount"; - public static final String REPORT_HEADLINE = "report.headline"; - public static final String REPORT_HEADLINE_PAYMENTS_OVERVIEW = "report.headline.payments.overview"; - public static final String REPORT_SUM_TOTAL = "report.sum.total"; - public static final String REPORT_SUM = "report.sum"; - public static final String REPORT_FOOTER_LEFT = "report.footer.left"; - public static final String REPORT_FOOTER_CENTER = "report.footer.center"; - public static final String REPORT_REPEATING_YES ="report.repeating.yes"; - public static final String REPORT_REPEATING_NO ="report.repeating.no"; - public static final String REPORT_INITIAL_FILENAME ="report.initial.filename"; - public static final String REPORT_BUDGET = "report.budget"; - public static final String REPORT_INCOMES = "report.incomes"; - public static final String REPORT_PAYMENTS = "report.payments"; - public static final String REPORT_BUDGET_REST = "report.budget.rest"; - - //MONTH_NAMES - public static final String MONTH_JANUARY ="month.january"; - public static final String MONTH_FEBRUARY ="month.february"; - public static final String MONTH_MARCH ="month.march"; - public static final String MONTH_APRIL ="month.april"; - public static final String MONTH_MAY ="month.may"; - public static final String MONTH_JUNE ="month.june"; - public static final String MONTH_JULY ="month.july"; - public static final String MONTH_AUGUST ="month.august"; - public static final String MONTH_SEPTEMBER ="month.september"; - public static final String MONTH_OCTOBER ="month.october"; - public static final String MONTH_NOVEMBER ="month.november"; - public static final String MONTH_DECEMBER ="month.december"; - - //NOTIFICATION - public static final String NOTIFICATION_CHART_EXPORT = "notification.chart.export"; - public static final String NOTIFICATION_REPORT_SAVE = "notification.report.save"; - public static final String NOTIFICATION_SETTINGS_SAVE = "notification.settings.save"; - public static final String NOTIFICATION_NO_UPDATE_AVAILABLE = "notification.no.update.available"; - - //INFO - public static final String INFO_TITLE_CATEGORY_DELETE = "info.title.category.delete"; - public static final String INFO_TEXT_CATEGORY_DELETE = "info.text.category.delete"; - public static final String INFO_TITLE_PAYMENT_DELETE = "info.title.payment.delete"; - public static final String INFO_TEXT_PAYMENT_DELETE = "info.text.payment.delete"; - public static final String INFO_TEXT_PAYMENT_REPEATING_DELETE = "info.text.payment.repeating.delete"; - public static final String INFO_TEXT_PAYMENT_REPEATING_DELETE_ALL = "info.text.payment.repeating.delete.all"; - public static final String INFO_TEXT_PAYMENT_REPEATING_DELETE_FUTURES = "info.text.payment.repeating.delete.futures"; - public static final String INFO_FIRST_START = "info.first.start"; - public static final String INFO_TITLE_CHART_EXPORT = "info.title.chart.export"; - public static final String INFO_TEXT_CHART_EXPORT = "info.text.chart.export"; - public static final String INFO_TEXT_CHART_EXPORT_OPEN_FOLDER = "info.text.chart.export.open.folder"; - public static final String INFO_TEXT_CHART_EXPORT_OPEN_CHART = "info.text.chart.export.open.chart"; - public static final String INFO_TITLE_REPORT_SAVE = "info.title.report.save"; - public static final String INFO_TEXT_REPORT_SAVE = "info.text.report.save"; - public static final String INFO_TEXT_REPORT_SAVE_OPEN_FOLDER = "info.text.report.save.open.folder"; - public static final String INFO_TEXT_REPORT_SAVE_OPEN_REPORT = "info.text.report.save.open.report"; - public static final String INFO_TITLE_DATABASE_EXPORT = "info.title.database.export"; - public static final String INFO_TEXT_DATABASE_EXPORT = "info.text.database.export"; - public static final String INFO_TITLE_DATABASE_IMPORT = "info.title.database.import"; - public static final String INFO_TEXT_DATABASE_IMPORT = "info.text.database.import"; - public static final String INFO_TITLE_DATABASE_IMPORT_DIALOG = "info.title.database.import.dialog"; - public static final String INFO_TEXT_DATABASE_IMPORT_DIALOG = "info.text.database.import.dialog"; - public static final String INFO_TEXT_DATABASE_IMPORT_DIALOG_DELETE = "info.text.database.import.dialog.delete"; - public static final String INFO_TEXT_DATABASE_IMPORT_DIALOG_APPEND = "info.text.database.import.dialog.append"; - public static final String INFO_TITLE_DATABASE_DELETE = "info.title.database.delete"; - public static final String INFO_HEADER_TEXT_DATABASE_DELETE = "info.header.text.database.delete"; - public static final String INFO_TEXT_DATABASE_DELETE = "info.text.database.delete"; - public static final String INFO_TITLE_WELCOME = "info.title.welcome"; - public static final String INFO_HEADER_TEXT_WELCOME = "info.header.text.welcome"; - public static final String INFO_TEXT_WELCOME_FIRST_START = "info.text.welcome.first.start"; - public static final String INFO_TEXT_WELCOME_COMPATIBILITY = "info.text.welcome.compatibility"; - public static final String INFO_TITLE_LANGUAGE_CHANGED = "info.title.language.changed"; - public static final String INFO_TEXT_LANGUAGE_CHANGED = "info.text.language.changed"; - public static final String INFO_TEXT_LANGUAGE_CHANGED_RESTART_NOW = "info.text.language.changed.restart.now"; - public static final String INFO_TEXT_LANGUAGE_CHANGED_RESTART_LATER = "info.text.language.changed.restart.later"; - public static final String INFO_TITLE_UPDATE_AVAILABLE = "info.title.update.available"; - public static final String INFO_TEXT_UPDATE_AVAILABLE = "info.text.update.available"; - public static final String INFO_TEXT_UPDATE_AVAILABLE_SHOW_CHANGES = "info.text.update.available.show.changes"; - public static final String INFO_TEXT_UPDATE_AVAILABLE_SHOW_CHANGES_DETAILED = "info.text.update.available.show.changes.detailed"; - public static final String INFO_TEXT_UPDATE_AVAILABLE_NOW = "info.text.update.available.now"; - public static final String INFO_TITLE_START_AFTER_UPDATE = "info.title.start.after.update"; - public static final String INFO_HEADER_TEXT_START_AFTER_UPDATE = "info.header.text.start.after.update"; - public static final String INFO_TEXT_START_AFTER_UPDATE = "info.text.start.after.update"; - public static final String INFO_TAGS = "info.tags"; - public static final String INFO_TITLE_SHUTDOWN = "info.title.shutdown"; - public static final String INFO_TEXT_SHUTDOWN = "info.text.shutdown"; - - //WARNING - public static final String WARNING_ENDDATE_BEFORE_STARTDATE = "warning.enddate.before.startdate"; - public static final String WARNING_EMPTY_WIDTH_IN_PIXELS = "warning.empty.width.in.pixels"; - public static final String WARNING_INTEGER_WIDTH_IN_PIXELS = "warning.integer.width.in.pixels"; - public static final String WARNING_EMPTY_HEIGHT_IN_PIXELS = "warning.empty.height.in.pixels"; - public static final String WARNING_INTEGER_HEIGHT_IN_PIXELS = "warning.integer.height.in.pixels"; - public static final String WARNING_EMPTY_SAVEPATH_CHART = "warning.empty.savepath.chart"; - public static final String WARNING_EMPTY_CATEGORY_NAME = "warning.empty.category.name"; - public static final String WARNING_EMPTY_PAYMENT_NAME = "warning.empty.payment.name"; - public static final String WARNING_NAME_CHARACTER_LIMIT_REACHED_45 = "warning.name.character.limit.reached.45"; - public static final String WARNING_NAME_CHARACTER_LIMIT_REACHED_150 = "warning.name.character.limit.reached.150"; - public static final String WARNING_DESCRIPTION_CHARACTER_LIMIT_REACHED_150 = "warning.description.character.limit.reached.150"; - public static final String WARNING_TAG_CHARACTER_LIMIT_REACHED_45 = "warning.tag.character.limit.reached.45"; - public static final String WARNING_PAYMENT_AMOUNT = "warning.payment.amount"; - public static final String WARNING_EMPTY_PAYMENT_DATE = "warning.empty.payment.date"; - public static final String WARNING_PAYMENT_REPEATING = "warning.payment.repeating"; - public static final String WARNING_EMPTY_SECRET_CLIENT = "warning.empty.secret.client"; - public static final String WARNING_EMPTY_URL = "warning.empty.url"; - public static final String WARNING_EMPTY_SECRET_SERVER = "warning.empty.secret.server"; - public static final String WARNING_EMPTY_CURRENCY = "warning.empty.currency"; - public static final String WARNING_WRONG_VERIFICATION_CODE = "warning.wrong.verificationcode"; - public static final String WARNING_EMPTY_PASSWORD = "warning.empty.password"; - public static final String WARNING_WRONG_PASSWORD = "warning.wrong.password"; - public static final String WARNING_SERVER_VERSION = "warning.server.version"; - public static final String WARNING_EMPTY_YEAR = "warning.empty.year"; - public static final String WARNING_WRONG_YEAR = "warning.wrong.year"; - - //ERROR - public static final String ERROR_UNKNOWN_HOST = "error.unknown.host"; - public static final String ERROR_UNKNOWN_ERROR = "error.unknown.error"; - public static final String ERROR_CONNECTION_REFUSED = "error.connection.refused"; - public static final String ERROR_HTTPS_HOSTNAME_WRONG = "error.https.hostname.wrong"; - public static final String ERROR_400 = "error.400"; - public static final String ERROR_401 = "error.401"; - public static final String ERROR_500 = "error.500"; - public static final String ERROR_CREATE_UI = "error.create.ui"; - public static final String ERROR_SERVER_CONNECTION = "error.server.connection"; - public static final String ERROR_SERVER_CONNECTION_WITH_DETAILS = "error.server.connection.with.details"; - public static final String ERROR_OPEN_FOLDER = "error.open.folder"; - public static final String ERROR_OPEN_CHART = "error.open.chart"; - public static final String ERROR_OPEN_REPORT = "error.open.report"; - public static final String ERROR_CHART_EXPORT = "error.chart.export"; - public static final String ERROR_REPORT_SAVE = "error.report.save"; - public static final String ERROR_SETTINGS_SAVE = "error.settings.save"; - public static final String ERROR_DATABASE_IMPORT = "error.database.import"; - public static final String ERROR_DATABASE_IMPORT_WRONG_FILE = "error.database.import.wrong.file"; - public static final String ERROR_PASSWORD_SAVE = "error.password.save"; - public static final String ERROR_UPDATER_GET_LATEST_VERSION = "error.updater.get.latest.version"; - public static final String ERROR_UPDATER_DOWNLOAD_LATEST_VERSION = "error.updater.download.latest.version"; - public static final String ERROR_OPEN_BROWSER = "error.open.browser"; - public static final String ERROR_LOCAL_SERVER_START = "error.local.server.start"; - public static final String ERROR_LOCAL_SERVER_DOWNLOAD = "error.local.server.download"; - - //ABOUT - public static final String ABOUT = "about"; - public static final String ABOUT_ROADMAP_LINK = "about.roadmap.link"; - public static final String ABOUT_VERSION = "about.version"; - public static final String ABOUT_DATE = "about.date"; - public static final String ABOUT_AUTHOR = "about.author"; - public static final String ABOUT_ROADMAP = "about.roadmap"; - public static final String ABOUT_SOURCECODE = "about.sourcecode"; - public static final String ABOUT_CREDITS = "about.credits"; -} \ No newline at end of file diff --git a/BudgetMasterServer/.classpath b/BudgetMasterServer/.classpath deleted file mode 100644 index 8e795b1c7..000000000 --- a/BudgetMasterServer/.classpath +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<classpath> - <classpathentry kind="src" output="target/classes" path="src/main/java"> - <attributes> - <attribute name="optional" value="true"/> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="src" output="target/test-classes" path="src/test/java"> - <attributes> - <attribute name="optional" value="true"/> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER"> - <attributes> - <attribute name="maven.pomderived" value="true"/> - </attributes> - </classpathentry> - <classpathentry kind="output" path="target/classes"/> -</classpath> diff --git a/BudgetMasterServer/.project b/BudgetMasterServer/.project deleted file mode 100644 index 3af6b4d3f..000000000 --- a/BudgetMasterServer/.project +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>BudgetMasterServer</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.jdt.core.javabuilder</name> - <arguments> - </arguments> - </buildCommand> - <buildCommand> - <name>org.eclipse.m2e.core.maven2Builder</name> - <arguments> - </arguments> - </buildCommand> - </buildSpec> - <natures> - <nature>org.eclipse.jdt.core.javanature</nature> - <nature>org.eclipse.m2e.core.maven2Nature</nature> - </natures> -</projectDescription> diff --git a/BudgetMasterServer/.settings/org.eclipse.jdt.core.prefs b/BudgetMasterServer/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 714351aec..000000000 --- a/BudgetMasterServer/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,5 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/BudgetMasterServer/.settings/org.eclipse.m2e.core.prefs b/BudgetMasterServer/.settings/org.eclipse.m2e.core.prefs deleted file mode 100644 index f897a7f1c..000000000 --- a/BudgetMasterServer/.settings/org.eclipse.m2e.core.prefs +++ /dev/null @@ -1,4 +0,0 @@ -activeProfiles= -eclipse.preferences.version=1 -resolveWorkspaceProjects=true -version=1 diff --git a/BudgetMasterServer/pom.xml b/BudgetMasterServer/pom.xml deleted file mode 100644 index b3a9bffda..000000000 --- a/BudgetMasterServer/pom.xml +++ /dev/null @@ -1,95 +0,0 @@ -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <modelVersion>4.0.0</modelVersion> - <groupId>de.deadlocker8</groupId> - <artifactId>BudgetMasterServer</artifactId> - <version>1.8.0</version> - <name>BudgetMasterServer</name> - <build> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <version>3.7.0</version> - <configuration> - <source>1.8</source> - <target>1.8</target> - </configuration> - </plugin> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <configuration> - <outputDirectory>../build/${project.version}</outputDirectory> - <finalName>BudgetMasterServer-v${project.version}</finalName> - <appendAssemblyId>false</appendAssemblyId> - <archive> - <manifest> - <mainClass>de.deadlocker8.budgetmasterserver.main.Main</mainClass> - </manifest> - </archive> - <descriptorRefs> - <descriptorRef>jar-with-dependencies</descriptorRef> - </descriptorRefs> - </configuration> - <executions> - <execution> - <id>make-assembly</id> <!-- this is used for inheritance merges --> - <phase>package</phase> <!-- bind to the packaging phase --> - <goals> - <goal>single</goal> - </goals> - </execution> - </executions> - </plugin> - </plugins> - </build> - - <dependencies> - <dependency> - <groupId>com.sparkjava</groupId> - <artifactId>spark-core</artifactId> - <version>2.5.4</version> - </dependency> - <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-simple</artifactId> - <version>1.7.21</version> - </dependency> - <dependency> - <groupId>com.google.code.gson</groupId> - <artifactId>gson</artifactId> - <version>2.8.1</version> - </dependency> - <dependency> - <groupId>mysql</groupId> - <artifactId>mysql-connector-java</artifactId> - <version>6.0.5</version> - </dependency> - <dependency> - <groupId>joda-time</groupId> - <artifactId>joda-time</artifactId> - <version>2.9.7</version> - </dependency> - <dependency> - <groupId>de.deadlocker8</groupId> - <artifactId>tools</artifactId> - <version>1.0.0</version> - </dependency> - <dependency> - <groupId>de.deadlocker8</groupId> - <artifactId>BudgetMasterCore</artifactId> - <version>0.0.1-SNAPSHOT</version> - </dependency> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>4.12</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.xerial</groupId> - <artifactId>sqlite-jdbc</artifactId> - <version>3.21.0</version> - </dependency> - </dependencies> -</project> \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/AdvancedRoute.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/AdvancedRoute.java deleted file mode 100644 index 898188ab9..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/AdvancedRoute.java +++ /dev/null @@ -1,19 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic; - -import spark.Request; -import spark.Response; -import spark.Route; - -public interface AdvancedRoute extends Route -{ - void before(); - Object handleRequest(Request req, Response res); - void after(); - default Object handle(Request request, Response response) throws Exception - { - before(); - Object value = handleRequest(request, response); - after(); - return value; - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/Settings.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/Settings.java deleted file mode 100644 index fe2227c3f..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/Settings.java +++ /dev/null @@ -1,204 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic; - -public class Settings -{ - private String databaseType; - private String databaseUrl; - private String databaseName; - private String databaseUsername; - private String databasePassword; - private int serverPort; - private String serverSecret; - private String keystorePath; - private String keystorePassword; - - public Settings() - { - - } - - public String getDatabaseType() - { - return databaseType; - } - - public void setDatabaseType(String databaseType) - { - this.databaseType = databaseType; - } - - public String getDatabaseUrl() - { - return databaseUrl; - } - - public void setDatabaseUrl(String databaseUrl) - { - this.databaseUrl = databaseUrl; - } - - public String getDatabaseName() - { - return databaseName; - } - - public void setDatabaseName(String databaseName) - { - this.databaseName = databaseName; - } - - public String getDatabaseUsername() - { - return databaseUsername; - } - - public void setDatabaseUsername(String databaseUsername) - { - this.databaseUsername = databaseUsername; - } - - public String getDatabasePassword() - { - return databasePassword; - } - - public void setDatabasePassword(String databasePassword) - { - this.databasePassword = databasePassword; - } - - public int getServerPort() - { - return serverPort; - } - - public void setServerPort(int serverPort) - { - this.serverPort = serverPort; - } - - public String getServerSecret() - { - return serverSecret; - } - - public void setServerSecret(String serverSecret) - { - this.serverSecret = serverSecret; - } - - public String getKeystorePath() - { - return keystorePath; - } - - public void setKeystorePath(String keystorePath) - { - this.keystorePath = keystorePath; - } - - public String getKeystorePassword() - { - return keystorePassword; - } - - public void setKeystorePassword(String keystorePassword) - { - this.keystorePassword = keystorePassword; - } - - @Override - public String toString() - { - return "Settings [databaseType=" + databaseType + ", databaseUrl=" + databaseUrl + ", databaseName=" + databaseName + ", databaseUsername=" + databaseUsername + ", databasePassword=" + databasePassword + ", serverPort=" + serverPort + ", serverSecret=" + serverSecret + ", keystorePath=" - + keystorePath + ", keystorePassword=" + keystorePassword + "]"; - } - - @Override - public int hashCode() - { - final int prime = 31; - int result = 1; - result = prime * result + ((databaseName == null) ? 0 : databaseName.hashCode()); - result = prime * result + ((databasePassword == null) ? 0 : databasePassword.hashCode()); - result = prime * result + ((databaseType == null) ? 0 : databaseType.hashCode()); - result = prime * result + ((databaseUrl == null) ? 0 : databaseUrl.hashCode()); - result = prime * result + ((databaseUsername == null) ? 0 : databaseUsername.hashCode()); - result = prime * result + ((keystorePassword == null) ? 0 : keystorePassword.hashCode()); - result = prime * result + ((keystorePath == null) ? 0 : keystorePath.hashCode()); - result = prime * result + serverPort; - result = prime * result + ((serverSecret == null) ? 0 : serverSecret.hashCode()); - return result; - } - - @Override - public boolean equals(Object obj) - { - if(this == obj) - return true; - if(obj == null) - return false; - if(getClass() != obj.getClass()) - return false; - Settings other = (Settings)obj; - if(databaseName == null) - { - if(other.databaseName != null) - return false; - } - else if(!databaseName.equals(other.databaseName)) - return false; - if(databasePassword == null) - { - if(other.databasePassword != null) - return false; - } - else if(!databasePassword.equals(other.databasePassword)) - return false; - if(databaseType == null) - { - if(other.databaseType != null) - return false; - } - else if(!databaseType.equals(other.databaseType)) - return false; - if(databaseUrl == null) - { - if(other.databaseUrl != null) - return false; - } - else if(!databaseUrl.equals(other.databaseUrl)) - return false; - if(databaseUsername == null) - { - if(other.databaseUsername != null) - return false; - } - else if(!databaseUsername.equals(other.databaseUsername)) - return false; - if(keystorePassword == null) - { - if(other.keystorePassword != null) - return false; - } - else if(!keystorePassword.equals(other.keystorePassword)) - return false; - if(keystorePath == null) - { - if(other.keystorePath != null) - return false; - } - else if(!keystorePath.equals(other.keystorePath)) - return false; - if(serverPort != other.serverPort) - return false; - if(serverSecret == null) - { - if(other.serverSecret != null) - return false; - } - else if(!serverSecret.equals(other.serverSecret)) - return false; - return true; - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/Utils.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/Utils.java deleted file mode 100644 index 0a0b2adab..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/Utils.java +++ /dev/null @@ -1,101 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic; - -import java.io.IOException; -import java.io.Writer; -import java.net.URISyntaxException; -import java.nio.file.Files; -import java.nio.file.Paths; -import java.sql.Connection; -import java.sql.DriverManager; -import java.sql.SQLException; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; - -import de.deadlocker8.budgetmasterserver.logic.database.creator.DatabaseCreator; -import de.deadlocker8.budgetmasterserver.logic.database.creator.MysqlDatabaseCreator; -import de.deadlocker8.budgetmasterserver.logic.database.creator.SqliteDatabaseCreator; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.handler.MysqlDatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.handler.SqliteDatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.MysqlDatabaseTagHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.SqliteDatabaseTagHandler; - -public class Utils -{ - public static Settings loadSettings() throws IOException, URISyntaxException - { - String settingsJSON; - Settings settings; - - Gson gson = new Gson(); - - settingsJSON = new String(Files.readAllBytes(Paths.get(Settings.class.getProtectionDomain().getCodeSource().getLocation().toURI()).getParent().resolve("settings.json"))); - settings = gson.fromJson(settingsJSON, Settings.class); - return settings; - } - - public static void saveSettings(Settings settings) throws IOException, URISyntaxException - { - Gson gson = new GsonBuilder().setPrettyPrinting().create(); - String jsonString = gson.toJson(settings); - Writer writer = Files.newBufferedWriter(Paths.get(Settings.class.getProtectionDomain().getCodeSource().getLocation().toURI()).getParent().resolve("settings.json")); - writer.write(jsonString); - writer.close(); - } - - public static Connection getDatabaseConnection(Settings settings) throws SQLException, ClassNotFoundException - { - Class.forName("org.sqlite.JDBC"); - - if(settings.getDatabaseType().equals("mysql")) - { - return DriverManager.getConnection("jdbc:mysql://" + settings.getDatabaseUrl() + settings.getDatabaseName() + "?useLegacyDatetimeCode=false&serverTimezone=Europe/Berlin&autoReconnect=true&wait_timeout=86400", settings.getDatabaseUsername(), settings.getDatabasePassword()); - } - else - { - return DriverManager.getConnection("jdbc:sqlite://" + settings.getDatabaseUrl()); - } - } - - public static DatabaseCreator getDatabaseCreator(Connection connection, Settings settings) - { - if(settings.getDatabaseType().equals("mysql")) - { - return new MysqlDatabaseCreator(connection, settings); - } - else - { - return new SqliteDatabaseCreator(connection, settings); - } - } - - public static DatabaseHandler getDatabaseHandler(Settings settings) throws ClassNotFoundException - { - Class.forName("org.sqlite.JDBC"); - - if(settings.getDatabaseType().equals("mysql")) - { - return new MysqlDatabaseHandler(settings); - } - else - { - return new SqliteDatabaseHandler(settings); - } - } - - public static DatabaseTagHandler getDatabaseTagHandler(Settings settings) throws ClassNotFoundException - { - Class.forName("org.sqlite.JDBC"); - - if(settings.getDatabaseType().equals("mysql")) - { - return new MysqlDatabaseTagHandler(settings); - } - else - { - return new SqliteDatabaseTagHandler(settings); - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/DatabaseExporter.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/DatabaseExporter.java deleted file mode 100644 index fb0dc3277..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/DatabaseExporter.java +++ /dev/null @@ -1,217 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.database.Database; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmaster.logic.tag.TagMatch; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import logger.Logger; - -public class DatabaseExporter -{ - private Connection connection; - - public DatabaseExporter(Settings settings) throws IllegalStateException - { - try - { - this.connection = Utils.getDatabaseConnection(settings); - } - catch(Exception e) - { - Logger.error(e); - throw new IllegalStateException("Cannot connect the database!", e); - } - } - - public Database exportDatabase() - { - ArrayList<Category> categories = getAllCategories(); - ArrayList<NormalPayment> normalPayments = getAllNormalPayments(); - ArrayList<RepeatingPayment> repeatingPayments = getAllRepeatingPayments(); - ArrayList<Tag> tags = getAllTags(); - ArrayList<TagMatch> tagMatches = getAllTagMatches(); - - return new Database(categories, normalPayments, repeatingPayments, tags, tagMatches); - } - - private void closeConnection(Statement statement) - { - if(statement != null) - { - try - { - statement.close(); - } - catch(SQLException e) - { - } - } - } - - private ArrayList<Category> getAllCategories() - { - PreparedStatement stmt = null; - ArrayList<Category> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM category ORDER BY category.ID"); - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - int id = rs.getInt("ID"); - String name = rs.getString("Name"); - String color = rs.getString("Color"); - - results.add(new Category(id, name, color)); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeConnection(stmt); - } - - return results; - } - - private ArrayList<NormalPayment> getAllNormalPayments() - { - PreparedStatement stmt = null; - ArrayList<NormalPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM payment;"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - String description = rs.getString("Description"); - - results.add(new NormalPayment(resultID, amount, date, categoryID, name, description)); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeConnection(stmt); - } - - return results; - } - - private ArrayList<RepeatingPayment> getAllRepeatingPayments() - { - PreparedStatement stmt = null; - ArrayList<RepeatingPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM repeating_payment;"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - String description = rs.getString("Description"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - int repeatInterval = rs.getInt("RepeatInterval"); - String repeatEndDate = rs.getString("RepeatEndDate"); - int repeatMonthDay = rs.getInt("RepeatMonthDay"); - - results.add(new RepeatingPayment(resultID, amount, date, categoryID, name, description, repeatInterval, repeatEndDate, repeatMonthDay)); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeConnection(stmt); - } - - return results; - } - - private ArrayList<Tag> getAllTags() - { - PreparedStatement stmt = null; - ArrayList<Tag> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM tag;"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - - results.add(new Tag(resultID, name)); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeConnection(stmt); - } - - return results; - } - - private ArrayList<TagMatch> getAllTagMatches() - { - PreparedStatement stmt = null; - ArrayList<TagMatch> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM tag_match;"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int tagID = rs.getInt("Tag_ID"); - int paymentID = rs.getInt("Payment_ID"); - int repeatingPaymentID = rs.getInt("RepeatingPayment_ID"); - results.add(new TagMatch(tagID, paymentID, repeatingPaymentID)); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeConnection(stmt); - } - - return results; - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/DatabaseImporter.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/DatabaseImporter.java deleted file mode 100644 index 091440c11..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/DatabaseImporter.java +++ /dev/null @@ -1,236 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database; - -import java.util.ArrayList; -import java.util.Iterator; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.database.Database; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmaster.logic.tag.TagMatch; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; - -public class DatabaseImporter -{ - private DatabaseHandler handler; - private DatabaseTagHandler tagHandler; - private ArrayList<Category> categories; - private ArrayList<NormalPayment> normalPayments; - private ArrayList<RepeatingPayment> repeatingPayments; - private ArrayList<NormalPayment> changedNormalPayments; - private ArrayList<RepeatingPayment> changedRepeatingPayments; - private ArrayList<Tag> tags; - private ArrayList<TagMatch> tagMatches; - private ArrayList<TagMatch> changedTagMatches; - - public DatabaseImporter(DatabaseHandler handler, DatabaseTagHandler tagHandler) throws IllegalStateException - { - this.handler = handler; - this.tagHandler = tagHandler; - } - - public void importDatabase(Database database) - { - this.categories = database.getCategories(); - this.normalPayments = database.getNormalPayments(); - this.repeatingPayments = database.getRepeatingPayments(); - this.changedNormalPayments = new ArrayList<>(); - this.changedRepeatingPayments = new ArrayList<>(); - this.tags = database.getTags(); - this.tagMatches = database.getTagMatches(); - this.changedTagMatches = new ArrayList<>(); - - importAll(); - } - - private void importAll() - { - for(Category currentCategory : categories) - { - if(currentCategory.getID() == 1 || currentCategory.getID() == 2) - { - continue; - } - - Category existingCategory = handler.getCategory(currentCategory.getName(), currentCategory.getColor()); - if(existingCategory == null) - { - handler.addCategory(currentCategory.getName(), currentCategory.getColor()); - int newID = handler.getLastInsertID(); - - updatePayments(currentCategory.getID(), newID); - } - else - { - updatePayments(currentCategory.getID(), existingCategory.getID()); - } - } - - //merge changed and remaining payments - normalPayments.addAll(changedNormalPayments); - repeatingPayments.addAll(changedRepeatingPayments); - - importNormalPayments(normalPayments); - tagMatches.addAll(changedTagMatches); - changedTagMatches = new ArrayList<>(); - - importRepeatingPayments(repeatingPayments); - tagMatches.addAll(changedTagMatches); - changedTagMatches = new ArrayList<>(); - - // import tags - for(Tag currentTag : tags) - { - int tagID = currentTag.getID(); - - Tag existingTag = tagHandler.getTagByName(currentTag.getName()); - if(existingTag == null) - { - tagHandler.addTag(currentTag.getName()); - int newID = tagHandler.getLastInsertID(); - - updateTagMatchesByTagID(tagID, newID); - } - else - { - updateTagMatchesByTagID(tagID, existingTag.getID()); - } - } - - tagMatches.addAll(changedTagMatches); - importTagMatches(tagMatches); - } - - private void updatePayments(int oldID, int newID) - { - //check normal payments for old category ID - Iterator<NormalPayment> iterator = normalPayments.iterator(); - while(iterator.hasNext()) - { - NormalPayment currentPayment = iterator.next(); - if(currentPayment.getCategoryID() == oldID) - { - currentPayment.setCategoryID(newID); - /* - * remove payment from payments list to avoid overriding category ID again on future calls of this method - * e.g.: call 1 = replace ID 2 with 3 - * call 2 = replace ID 3 with 4 - * --> would replace category IDs in payments where category ID has already been replaced - * --> would lead to wrong import - * --> remove payment from list but add to "changedPayments" in order not to loose the payment completely - * --> remaining payments in list and all payments from "changedPayments" will be merged after all categories are imported - */ - changedNormalPayments.add(currentPayment); - iterator.remove(); - } - } - - //check repeating payments for old category ID - Iterator<RepeatingPayment> iterator2 = repeatingPayments.iterator(); - while(iterator2.hasNext()) - { - RepeatingPayment currentPayment = iterator2.next(); - if(currentPayment.getCategoryID() == oldID) - { - currentPayment.setCategoryID(newID); - /* - * see explanation in NormalPayments loop - */ - changedRepeatingPayments.add(currentPayment); - iterator2.remove(); - } - } - } - - private void importNormalPayments(ArrayList<NormalPayment> normalPayments) - { - for(NormalPayment currentPayment : normalPayments) - { - int newID = handler.addNormalPayment(currentPayment.getAmount(), currentPayment.getDate(), currentPayment.getCategoryID(), currentPayment.getName(), currentPayment.getDescription()); - updateTagMatchesByPaymentID(currentPayment.getID(), newID); - } - } - - private void importRepeatingPayments(ArrayList<RepeatingPayment> repeatingPayments) - { - for(RepeatingPayment currentPayment : repeatingPayments) - { - int newID = handler.addRepeatingPayment(currentPayment.getAmount(), currentPayment.getDate(), currentPayment.getCategoryID(), currentPayment.getName(), currentPayment.getDescription(), currentPayment.getRepeatInterval(), currentPayment.getRepeatEndDate(), currentPayment.getRepeatMonthDay()); - updateTagMatchesByRepeatingPaymentID(currentPayment.getID(), newID); - } - } - - private void updateTagMatchesByTagID(int oldID, int newID) - { - //check tag matches for old tag ID - Iterator<TagMatch> iterator = tagMatches.iterator(); - while(iterator.hasNext()) - { - TagMatch currentTagMatch = iterator.next(); - if(currentTagMatch.getTagID() == oldID) - { - currentTagMatch.setTagID(newID); - /* - * see explanation in updatePayments() - */ - changedTagMatches.add(currentTagMatch); - iterator.remove(); - } - } - } - - private void updateTagMatchesByPaymentID(int oldID, int newID) - { - //check tag matches for old payment ID - Iterator<TagMatch> iterator = tagMatches.iterator(); - while(iterator.hasNext()) - { - TagMatch currentTagMatch = iterator.next(); - if(currentTagMatch.getPaymentID() == oldID) - { - currentTagMatch.setPaymentID(newID); - /* - * see explanation in updatePayments() - */ - changedTagMatches.add(currentTagMatch); - iterator.remove(); - } - } - } - - private void updateTagMatchesByRepeatingPaymentID(int oldID, int newID) - { - //check tag matches for old payment ID - Iterator<TagMatch> iterator = tagMatches.iterator(); - while(iterator.hasNext()) - { - TagMatch currentTagMatch = iterator.next(); - if(currentTagMatch.getRepeatingPaymentID() == oldID) - { - currentTagMatch.setRepeatingPaymentID(newID); - /* - * see explanation in updatePayments() - */ - changedTagMatches.add(currentTagMatch); - iterator.remove(); - } - } - } - - private void importTagMatches(ArrayList<TagMatch> tagMatches) - { - for(TagMatch currentTagMatch : tagMatches) - { - if(currentTagMatch.getRepeatingPaymentID() == -1) - { - tagHandler.addTagMatchForPayment(currentTagMatch.getTagID(), currentTagMatch.getPaymentID()); - } - else - { - tagHandler.addTagMatchForRepeatingPayment(currentTagMatch.getTagID(), currentTagMatch.getRepeatingPaymentID()); - } - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/DatabaseCreator.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/DatabaseCreator.java deleted file mode 100644 index 2fef700c2..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/DatabaseCreator.java +++ /dev/null @@ -1,73 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.creator; - -import java.sql.Connection; -import java.util.ArrayList; - -import de.deadlocker8.budgetmasterserver.logic.Settings; -import logger.Logger; - -public abstract class DatabaseCreator -{ - Connection connection; - Settings settings; - - public DatabaseCreator(Connection connection, Settings settings) - { - this.connection = connection; - this.settings = settings; - } - - public void createTables() - { - Logger.info("Checking tables..."); - createTables(getExistingTables()); - Logger.info("Checking tables [DONE]"); - } - - public abstract ArrayList<String> getExistingTables(); - - private void createTables(ArrayList<String> existingTables) - { - if(!existingTables.contains("category")) - { - createTableCategory(); - } - - if(!existingTables.contains("payment")) - { - createTablePayment(); - } - - if(!existingTables.contains("repeating_payment")) - { - createTableRepeatingPayment(); - } - - if(!existingTables.contains("repeating_entry")) - { - createTableRepeatingEntry(); - } - - if(!existingTables.contains("tag")) - { - createTableTag(); - } - - if(!existingTables.contains("tag_match")) - { - createTableTagMatch(); - } - } - - public abstract void createTableCategory(); - - public abstract void createTablePayment(); - - public abstract void createTableRepeatingEntry(); - - public abstract void createTableRepeatingPayment(); - - public abstract void createTableTag(); - - public abstract void createTableTagMatch(); -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/MysqlDatabaseCreator.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/MysqlDatabaseCreator.java deleted file mode 100644 index 7c73373c7..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/MysqlDatabaseCreator.java +++ /dev/null @@ -1,280 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.creator; - -import java.sql.Connection; -import java.sql.DatabaseMetaData; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; - -import de.deadlocker8.budgetmasterserver.logic.Settings; -import logger.Logger; - -public class MysqlDatabaseCreator extends DatabaseCreator -{ - public MysqlDatabaseCreator(Connection connection, Settings settings) - { - super(connection, settings); - } - - @Override - public ArrayList<String> getExistingTables() - { - ArrayList<String> tables = new ArrayList<>(); - try - { - DatabaseMetaData meta = connection.getMetaData(); - ResultSet res = meta.getTables(settings.getDatabaseName(), null, "", new String[] { "TABLE" }); - while(res.next()) - { - tables.add(res.getString("TABLE_NAME")); - } - } - catch(Exception e) - { - Logger.error(e); - } - return tables; - } - - @Override - public void createTableCategory() - { - Statement stmt = null; - String query = "CREATE TABLE `category` (`ID` int(11) NOT NULL COMMENT 'ID'," + - " `Name` varchar(45) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'category name'," + - "`Color` text COLLATE utf8_unicode_ci NOT NULL COMMENT 'color hexcode'" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"; - String query2 = "INSERT INTO `category` (`ID`, `Name`, `Color`) VALUES(1, 'NONE', '#FFFFFF'),(2, 'Übertrag', '#FFFF00');"; - String query3 = "ALTER TABLE `category` ADD PRIMARY KEY (`ID`);"; - String query4 = "ALTER TABLE `category` MODIFY `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID', AUTO_INCREMENT=3;"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - stmt.execute(query2); - stmt.execute(query3); - stmt.execute(query4); - Logger.info("Successfully created table category"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTablePayment() - { - Statement stmt = null; - String query = "CREATE TABLE `payment` (" + - "`ID` int(11) NOT NULL COMMENT 'ID'," + - "`Name` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'payment name (description)'," + - "`CategoryID` int(11) DEFAULT NULL COMMENT 'category ID'," + - "`Amount` int(11) DEFAULT NULL COMMENT 'amount in cents'," + - "`Date` date DEFAULT NULL COMMENT 'payment date'," + - "`Description` varchar(150) DEFAULT NULL COMMENT 'optional description'" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"; - String query2 = "ALTER TABLE `payment` ADD PRIMARY KEY (`ID`);"; - String query3 = "ALTER TABLE `payment` MODIFY `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID';"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - stmt.execute(query2); - stmt.execute(query3); - Logger.info("Successfully created table payment"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTableRepeatingEntry() - { - Statement stmt = null; - String query = "CREATE TABLE `repeating_entry` (" + - "`ID` int(11) NOT NULL," + - "`RepeatingPaymentID` int(11) NOT NULL," + - "`Date` date NOT NULL" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"; - String query2 = "ALTER TABLE `repeating_entry` ADD PRIMARY KEY (`ID`), ADD KEY `RepeatingPaymentID` (`RepeatingPaymentID`);"; - String query3 = "ALTER TABLE `repeating_entry` MODIFY `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID';"; - String query4 = "ALTER TABLE `repeating_entry` ADD CONSTRAINT `constraint_1` FOREIGN KEY (`RepeatingPaymentID`) REFERENCES `repeating_payment` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE;"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - stmt.execute(query2); - stmt.execute(query3); - stmt.execute(query4); - Logger.info("Successfully created table repeating_entry"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTableRepeatingPayment() - { - Statement stmt = null; - String query = "CREATE TABLE `repeating_payment` (" + - "`ID` int(11) NOT NULL COMMENT 'ID'," + - "`Name` varchar(150) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'payment name (description)'," + - "`CategoryID` int(11) DEFAULT NULL COMMENT 'category ID'," + - "`Amount` int(11) DEFAULT NULL COMMENT 'amount in cents'," + - "`Date` date DEFAULT NULL COMMENT 'payment date'," + - "`Description` varchar(150) DEFAULT NULL COMMENT 'optional description'," + - "`RepeatInterval` int(11) DEFAULT NULL COMMENT 'repeat interval in days'," + - "`RepeatEndDate` date DEFAULT NULL COMMENT 'repeat end date'," + - "`RepeatMonthDay` int(11) DEFAULT NULL COMMENT 'day in month on which payment repeats'" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"; - String query2 = "ALTER TABLE `repeating_payment` ADD PRIMARY KEY (`ID`);"; - String query3 = "ALTER TABLE `repeating_payment` MODIFY `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID';"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - stmt.execute(query2); - stmt.execute(query3); - Logger.info("Successfully created table repeating_payment"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTableTag() - { - Statement stmt = null; - String query = "CREATE TABLE `tag` (`ID` int(11) NOT NULL COMMENT 'ID'," + - " `Name` varchar(45) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Name'" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"; - String query2 = "ALTER TABLE `tag` ADD PRIMARY KEY (`ID`);"; - String query3 = "ALTER TABLE `tag` MODIFY `ID` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID';"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - stmt.execute(query2); - stmt.execute(query3); - Logger.info("Successfully created table tag"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTableTagMatch() - { - Statement stmt = null; - String query = "CREATE TABLE `tag_match` (`Tag_ID` int(11) NOT NULL," + - "`Payment_ID` int(11) NOT NULL," + - "`RepeatingPayment_ID` int(11) NOT NULL" + - ") ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;"; - String query2 = "ALTER TABLE `tag_match` ADD KEY `Tag_ID` (`Tag_ID`), ADD KEY `Payment_ID` (`Payment_ID`), ADD KEY `RepeatingPayment_ID` (`RepeatingPayment_ID`);"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - stmt.execute(query2); - Logger.info("Successfully created table tag_match"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/SqliteDatabaseCreator.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/SqliteDatabaseCreator.java deleted file mode 100644 index 0e869e60c..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/creator/SqliteDatabaseCreator.java +++ /dev/null @@ -1,248 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.creator; - -import java.sql.Connection; -import java.sql.DatabaseMetaData; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; - -import de.deadlocker8.budgetmasterserver.logic.Settings; -import logger.Logger; - -public class SqliteDatabaseCreator extends DatabaseCreator -{ - public SqliteDatabaseCreator(Connection connection, Settings settings) - { - super(connection, settings); - } - - @Override - public ArrayList<String> getExistingTables() - { - ArrayList<String> tables = new ArrayList<>(); - try - { - DatabaseMetaData meta = connection.getMetaData(); - ResultSet res = meta.getTables(settings.getDatabaseName(), null, "", new String[] { "TABLE" }); - while(res.next()) - { - tables.add(res.getString("TABLE_NAME")); - } - } - catch(Exception e) - { - Logger.error(e); - } - return tables; - } - - @Override - public void createTableCategory() - { - Statement stmt = null; - String query = "CREATE TABLE `category` (`ID` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, `Name` TEXT DEFAULT NULL, `Color` TEXT NOT NULL);"; - String query2 = "INSERT INTO `category` (`ID`, `Name`, `Color`) VALUES(1, 'NONE', '#FFFFFF'),(2, 'Übertrag', '#FFFF00');"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - stmt.execute(query2); - Logger.info("Successfully created table category"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTablePayment() - { - Statement stmt = null; - String query = "CREATE TABLE `payment` (" + - "`ID` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT," + - "`Name` TEXT DEFAULT NULL," + - "`CategoryID` INTEGER DEFAULT NULL," + - "`Amount` INTEGER DEFAULT NULL," + - "`Date` TEXT DEFAULT NULL," + - "`Description` TEXT DEFAULT NULL);"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - Logger.info("Successfully created table payment"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTableRepeatingEntry() - { - Statement stmt = null; - String query = "CREATE TABLE `repeating_entry` (" + - "`ID` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT," + - "`RepeatingPaymentID` INTEGER NOT NULL," + - "`Date` TEXT NOT NULL," + - "FOREIGN KEY (RepeatingPaymentID) REFERENCES repeating_payment(ID) ON DELETE CASCADE ON UPDATE CASCADE);"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - Logger.info("Successfully created table repeating_entry"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTableRepeatingPayment() - { - Statement stmt = null; - String query = "CREATE TABLE `repeating_payment` (\r\n" + - "`ID` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,\r\n" + - "`Name` TEXT DEFAULT NULL,\r\n" + - "`CategoryID` INTEGER DEFAULT NULL,\r\n" + - "`Amount` INTEGER DEFAULT NULL,\r\n" + - "`Date` TEXT DEFAULT NULL,\r\n" + - "`Description` TEXT DEFAULT NULL,\r\n" + - "`RepeatInterval` INTEGER DEFAULT NULL,\r\n" + - "`RepeatEndDate` TEXT DEFAULT NULL,\r\n" + - "`RepeatMonthDay` INTEGER DEFAULT NULL);"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - Logger.info("Successfully created table repeating_payment"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTableTag() - { - Statement stmt = null; - String query = "CREATE TABLE `tag` (`ID` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, `Name` TEXT NOT NULL);"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - Logger.info("Successfully created table tag"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } - - @Override - public void createTableTagMatch() - { - Statement stmt = null; - String query = "CREATE TABLE `tag_match` (`Tag_ID` INTEGER NOT NULL," + - "`Payment_ID` INTEGER NOT NULL," + - "`RepeatingPayment_ID` INTEGER NOT NULL);"; - - try - { - stmt = connection.createStatement(); - stmt.execute(query); - Logger.info("Successfully created table tag_match"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - if(stmt != null) - { - try - { - stmt.close(); - } - catch(SQLException e) - { - } - } - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/DatabaseHandler.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/DatabaseHandler.java deleted file mode 100644 index d211841f2..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/DatabaseHandler.java +++ /dev/null @@ -1,829 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.handler; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; - -import org.joda.time.DateTime; -import org.joda.time.format.DateTimeFormat; -import org.joda.time.format.DateTimeFormatter; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.payment.LatestRepeatingPayment; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import logger.Logger; - -public abstract class DatabaseHandler -{ - Connection connection; - Settings settings; - final DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd"); - - public DatabaseHandler(Settings settings) throws IllegalStateException - { - this.settings = settings; - } - - public void connect() - { - try - { - if(connection == null || connection.isClosed()) - { - connection = Utils.getDatabaseConnection(settings); - } - } - catch(Exception e) - { - Logger.error(e); - throw new IllegalStateException("Cannot connect the database!", e); - } - } - - public void closeConnection() - { - try - { - connection.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - } - - void closeStatement(Statement statement) - { - if(statement != null) - { - try - { - statement.close(); - } - catch(SQLException e) - { - } - } - } - - /* - * GET - */ - public abstract int getLastInsertID(); - - public DateTime getFirstNormalPaymentDate() - { - PreparedStatement stmt = null; - DateTime dateTime = null; - try - { - stmt = connection.prepareStatement("SELECT MIN(Date) as \"min\" FROM payment"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - String min = rs.getString("min"); - if(min == null) - { - dateTime = null; - } - else - { - dateTime = formatter.parseDateTime(rs.getString("min")); - } - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return dateTime; - } - - public DateTime getFirstRepeatingPaymentDate() - { - PreparedStatement stmt = null; - DateTime dateTime = null; - try - { - stmt = connection.prepareStatement("SELECT MIN(Date) as \"min\" FROM repeating_payment"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - String min = rs.getString("min"); - if(min == null) - { - dateTime = null; - } - else - { - dateTime = formatter.parseDateTime(rs.getString("min")); - } - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return dateTime; - } - - public int getRestForAllPreviousMonths(int year, int month) - { - DateTimeFormatter formatter = DateTimeFormat.forPattern("MM.yyyy"); - String dateString = String.valueOf(month) + "." + year; - DateTime currentDate = formatter.parseDateTime(dateString); - - DateTime firstNormalPaymentDate = getFirstNormalPaymentDate(); - if(firstNormalPaymentDate == null) - { - firstNormalPaymentDate = currentDate; - } - DateTime firstRepeatingPaymentDate = getFirstRepeatingPaymentDate(); - if(firstRepeatingPaymentDate == null) - { - firstRepeatingPaymentDate = currentDate; - } - - DateTime firstDate = firstNormalPaymentDate; - if(firstRepeatingPaymentDate.isBefore(firstNormalPaymentDate)) - { - firstDate = firstRepeatingPaymentDate; - } - - if(firstDate.isAfter(currentDate)) - { - return 0; - } - - int startYear = firstDate.getYear(); - int startMonth = firstDate.getMonthOfYear(); - int totalRest = 0; - - while(startYear < year || startMonth < month) - { - totalRest += getRest(startYear, startMonth); - - startMonth++; - if(startMonth > 12) - { - startMonth = 1; - startYear++; - } - } - return totalRest; - } - - public int getRest(int year, int month) - { - ArrayList<Payment> payments = new ArrayList<>(); - payments.addAll(getPayments(year, month)); - payments.addAll(getRepeatingPayments(year, month)); - - int rest = 0; - for(Payment currentPayment : payments) - { - rest += currentPayment.getAmount(); - } - - return rest; - } - - public ArrayList<Category> getCategories() - { - PreparedStatement stmt = null; - ArrayList<Category> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM category ORDER BY category.ID"); - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - int id = rs.getInt("ID"); - String name = rs.getString("Name"); - String color = rs.getString("Color"); - - results.add(new Category(id, name, color)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - public Category getCategory(int ID) - { - PreparedStatement stmt = null; - Category result = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM category WHERE category.ID = ?"); - stmt.setInt(1, ID); - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - int id = rs.getInt("ID"); - String name = rs.getString("Name"); - String color = rs.getString("Color"); - - result = new Category(id, name, color); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return result; - } - - public Category getCategory(String name, String color) - { - PreparedStatement stmt = null; - Category result = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM category WHERE category.name = ? AND category.color = ?;"); - stmt.setString(1, name); - stmt.setString(2, color); - - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - int id = rs.getInt("ID"); - String categoryName = rs.getString("Name"); - String categoryColor = rs.getString("Color"); - - result = new Category(id, categoryName, categoryColor); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return result; - } - - public boolean categoryExists(int ID) - { - PreparedStatement stmt = null; - boolean exists = false; - try - { - stmt = connection.prepareStatement("SELECT COUNT(ID) as \"count\" FROM category WHERE category.ID = ?;"); - stmt.setInt(1, ID); - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - if(rs.getInt("count") > 0) - { - exists = true; - } - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return exists; - } - - public NormalPayment getPayment(int ID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM payment WHERE payment.ID= ?;"); - stmt.setInt(1, ID); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - String description = rs.getString("Description"); - rs.close(); - return new NormalPayment(resultID, amount, date, categoryID, name, description); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return null; - } - - public ArrayList<NormalPayment> getAllNormalPayments() - { - PreparedStatement stmt = null; - - ArrayList<NormalPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM payment;"); - - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - String description = rs.getString("Description"); - - results.add(new NormalPayment(resultID, amount, date, categoryID, name, description)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - public abstract ArrayList<NormalPayment> getPayments(int year, int month); - - public abstract ArrayList<NormalPayment> getPaymentsBetween(String startDate, String endDate); - - public abstract ArrayList<RepeatingPaymentEntry> getRepeatingPayments(int year, int month); - - public abstract ArrayList<RepeatingPaymentEntry> getRepeatingPaymentsBetween(String startDate, String endDate); - - public ArrayList<RepeatingPayment> getAllRepeatingPayments() - { - PreparedStatement stmt = null; - - ArrayList<RepeatingPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM repeating_payment;"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - String description = rs.getString("Description"); - int categoryID = rs.getInt("CategoryID"); - int repeatInterval = rs.getInt("RepeatInterval"); - String repeatEndDate = rs.getString("RepeatEndDate"); - int repeatMonthDay = rs.getInt("RepeatMonthDay"); - - results.add(new RepeatingPayment(resultID, amount, date, categoryID, name, description, repeatInterval, repeatEndDate, repeatMonthDay)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - public ArrayList<LatestRepeatingPayment> getLatestRepeatingPaymentEntries() - { - PreparedStatement stmt = null; - - ArrayList<LatestRepeatingPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT ID, RepeatingPaymentID, MAX(Date) as 'LastDate' FROM repeating_entry GROUP BY RepeatingPaymentID"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - int repeatingPaymentID = rs.getInt("repeatingPaymentID"); - String date = rs.getString("LastDate"); - - results.add(new LatestRepeatingPayment(resultID, repeatingPaymentID, date)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - public RepeatingPayment getRepeatingPayment(int ID) - { - PreparedStatement stmt = null; - RepeatingPayment result = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM repeating_payment WHERE ID = ?;"); - stmt.setInt(1, ID); - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - int id = rs.getInt("ID"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - String name = rs.getString("Name"); - String description = rs.getString("Description"); - int repeatInterval = rs.getInt("repeatInterval"); - String repeatEndDate = rs.getString("repeatEndDate"); - int repeatMonthDay = rs.getInt("repeatMonthDay"); - - result = new RepeatingPayment(id, amount, date, categoryID, name, description, repeatInterval, repeatEndDate, repeatMonthDay); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return result; - } - - public int getNormalPaymentMaxAmount() - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("SELECT MAX(ABS(Amount)) as'max' FROM payment;"); ; - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - int result = rs.getInt("max"); - rs.close(); - return result; - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return -1; - } - - public int getRepeatingPaymentMaxAmount() - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("SELECT MAX(ABS(Amount)) as'max' FROM repeating_payment;"); ; - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - int result = rs.getInt("max"); - rs.close(); - return result; - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return -1; - } - - /* - * DELETE - */ - public void deleteCategory(int ID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("DELETE FROM category WHERE category.ID = ?;"); - stmt.setInt(1, ID); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public void deletePayment(int ID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("DELETE FROM payment WHERE payment.ID = ?;"); - stmt.setInt(1, ID); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public void deleteRepeatingPayment(int ID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("DELETE FROM repeating_payment WHERE repeating_payment.ID = ?;"); - stmt.setInt(1, ID); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public abstract void deleteDatabase(); - - /* - * ADD - */ - public void addCategory(String name, String color) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("INSERT INTO category (Name, Color) VALUES(?, ?);"); - stmt.setString(1, name); - stmt.setString(2, color); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public void importCategory(Category category) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("INSERT INTO category (ID, Name, Color) VALUES(?, ?, ?);"); - stmt.setInt(1, category.getID()); - stmt.setString(2, category.getName()); - stmt.setString(3, category.getColor()); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public Integer addNormalPayment(int amount, String date, int categoryID, String name, String description) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("INSERT INTO payment (Amount, Date, CategoryID, Name, Description) VALUES(?, ?, ?, ?, ?);", - Statement.RETURN_GENERATED_KEYS); - stmt.setInt(1, amount); - stmt.setString(2, date); - stmt.setInt(3, categoryID); - stmt.setString(4, name); - stmt.setString(5, description); - stmt.execute(); - - ResultSet rs = stmt.getGeneratedKeys(); - if(rs.next()) - { - int result = rs.getInt(1); - rs.close(); - return result; - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return -1; - } - - public Integer addRepeatingPayment(int amount, String date, int categoryID, String name, String description, int repeatInterval, String repeatEndDate, int repeatMonthDay) - { - PreparedStatement stmt = null; - String correctRepeatEndDate = repeatEndDate; - if(correctRepeatEndDate == null || correctRepeatEndDate.equals("A")) - { - correctRepeatEndDate = null; - } - - try - { - stmt = connection.prepareStatement("INSERT INTO repeating_payment (Amount, Date, CategoryID, Name, RepeatInterval, RepeatEndDate, RepeatMonthDay, Description) VALUES(?, ?, ?, ?, ?, ?, ?, ?);", - Statement.RETURN_GENERATED_KEYS); - stmt.setInt(1, amount); - stmt.setString(2, date); - stmt.setInt(3, categoryID); - stmt.setString(4, name); - stmt.setInt(5, repeatInterval); - stmt.setString(6, correctRepeatEndDate); - stmt.setInt(7, repeatMonthDay); - stmt.setString(8, description); - stmt.execute(); - - ResultSet rs = stmt.getGeneratedKeys(); - if(rs.next()) - { - int result = rs.getInt(1); - rs.close(); - return result; - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return -1; - } - - public void addRepeatingPaymentEntry(int repeatingPaymentID, String date) - { - PreparedStatement stmt = null; - - try - { - stmt = connection.prepareStatement("INSERT INTO repeating_entry (RepeatingPaymentID, Date) VALUES(?, ?);"); - stmt.setInt(1, repeatingPaymentID); - stmt.setString(2, date); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - /* - * UPDATE - */ - public void updateCategory(int ID, String name, String color) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("UPDATE category SET name=? , color=? WHERE ID = ?;"); - stmt.setString(1, name); - stmt.setString(2, color); - stmt.setInt(3, ID); - stmt.executeUpdate(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public void updateNormalPayment(int ID, int amount, String date, int categoryID, String name, String description) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("UPDATE payment SET amount=?, date=?, categoryID=?, name=?, description=? WHERE ID=?;"); - stmt.setInt(1, amount); - stmt.setString(2, date); - stmt.setInt(3, categoryID); - stmt.setString(4, name); - stmt.setString(5, description); - stmt.setInt(6, ID); - stmt.executeUpdate(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/MysqlDatabaseHandler.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/MysqlDatabaseHandler.java deleted file mode 100644 index b2c8e92b9..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/MysqlDatabaseHandler.java +++ /dev/null @@ -1,247 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.handler; - -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import logger.Logger; - -public class MysqlDatabaseHandler extends DatabaseHandler -{ - public MysqlDatabaseHandler(Settings settings) throws IllegalStateException - { - super(settings); - connect(); - } - - @Override - public int getLastInsertID() - { - PreparedStatement stmt = null; - int lastInsertID = 0; - try - { - stmt = connection.prepareStatement("SELECT LAST_INSERT_ID();"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - lastInsertID = rs.getInt("LAST_INSERT_ID()"); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return lastInsertID; - } - - @Override - public ArrayList<NormalPayment> getPayments(int year, int month) - { - PreparedStatement stmt = null; - - ArrayList<NormalPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM payment WHERE YEAR(Date) = ? AND MONTH(Date) = ?;"); - stmt.setInt(1, year); - stmt.setInt(2, month); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - String description = rs.getString("Description"); - - results.add(new NormalPayment(resultID, amount, date, categoryID, name, description)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - @Override - public ArrayList<RepeatingPaymentEntry> getRepeatingPayments(int year, int month) - { - PreparedStatement stmt = null; - - ArrayList<RepeatingPaymentEntry> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT repeating_entry.ID, repeating_entry.RepeatingPaymentID, repeating_entry.Date, repeating_payment.Name, repeating_payment.CategoryID, repeating_payment.Amount, repeating_payment.RepeatInterval, repeating_payment.RepeatEndDate, repeating_payment.RepeatMonthDay, repeating_payment.Description FROM repeating_entry, repeating_payment WHERE repeating_entry.RepeatingPaymentID = repeating_payment.ID AND YEAR(repeating_entry.Date) = ? AND MONTH(repeating_entry.Date) = ?;"); - stmt.setInt(1, year); - stmt.setInt(2, month); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - int repeatingPaymentID = rs.getInt("repeatingPaymentID"); - String name = rs.getString("Name"); - String description = rs.getString("Description"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - int repeatInterval = rs.getInt("RepeatInterval"); - String repeatEndDate = rs.getString("RepeatEndDate"); - int repeatMonthDay = rs.getInt("RepeatMonthDay"); - - results.add(new RepeatingPaymentEntry(resultID, repeatingPaymentID, date, amount, categoryID, name, description, repeatInterval, repeatEndDate, repeatMonthDay)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - @Override - public ArrayList<NormalPayment> getPaymentsBetween(String startDate, String endDate) - { - PreparedStatement stmt = null; - - ArrayList<NormalPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM payment WHERE DATE(Date) BETWEEN ? AND ?;"); - stmt.setString(1, startDate); - stmt.setString(2, endDate); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - String description = rs.getString("Description"); - - results.add(new NormalPayment(resultID, amount, date, categoryID, name, description)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - @Override - public ArrayList<RepeatingPaymentEntry> getRepeatingPaymentsBetween(String startDate, String endDate) - { - PreparedStatement stmt = null; - - ArrayList<RepeatingPaymentEntry> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT repeating_entry.ID, repeating_entry.RepeatingPaymentID, repeating_entry.Date, repeating_payment.Name, repeating_payment.CategoryID, repeating_payment.Amount, repeating_payment.RepeatInterval, repeating_payment.RepeatEndDate, repeating_payment.RepeatMonthDay, repeating_payment.Description FROM repeating_entry, repeating_payment WHERE repeating_entry.RepeatingPaymentID = repeating_payment.ID AND DATE(repeating_entry.Date) BETWEEN ? AND ?;"); - stmt.setString(1, startDate); - stmt.setString(2, endDate); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - int repeatingPaymentID = rs.getInt("repeatingPaymentID"); - String name = rs.getString("Name"); - String description = rs.getString("Description"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - int repeatInterval = rs.getInt("RepeatInterval"); - String repeatEndDate = rs.getString("RepeatEndDate"); - int repeatMonthDay = rs.getInt("RepeatMonthDay"); - - results.add(new RepeatingPaymentEntry(resultID, repeatingPaymentID, date, amount, categoryID, name, description,repeatInterval, repeatEndDate, repeatMonthDay)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - @Override - public void deleteDatabase() - { - Statement stmt = null; - String tableCategory = "DROP TABLE IF EXISTS category;"; - String tablePayment = "DROP TABLE IF EXISTS payment;"; - String tableRepeatingPayment = "DROP TABLE IF EXISTS repeating_payment;"; - String tableRepeatingEntry = "DROP TABLE IF EXISTS repeating_entry;"; - String tableTag = "DROP TABLE IF EXISTS tag;"; - String tableTagMatch = "DROP TABLE IF EXISTS tag_match;"; - try - { - stmt = connection.createStatement(); - stmt.execute("SET FOREIGN_KEY_CHECKS = 0;"); - stmt.execute(tableCategory); - Logger.info("Deleted table: category"); - stmt.execute(tablePayment); - Logger.info("Deleted table: payment"); - stmt.execute(tableRepeatingPayment); - Logger.info("Deleted table: repeating_payment"); - stmt.execute(tableRepeatingEntry); - Logger.info("Deleted table: repeating_entry"); - stmt.execute(tableTag); - Logger.info("Deleted table: tag"); - stmt.execute(tableTagMatch); - Logger.info("Deleted table: tag_match"); - stmt.execute("SET FOREIGN_KEY_CHECKS = 1;"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/SqliteDatabaseHandler.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/SqliteDatabaseHandler.java deleted file mode 100644 index 139b20dff..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/handler/SqliteDatabaseHandler.java +++ /dev/null @@ -1,245 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.handler; - -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import logger.Logger; - -public class SqliteDatabaseHandler extends DatabaseHandler -{ - public SqliteDatabaseHandler(Settings settings) throws IllegalStateException - { - super(settings); - connect(); - } - - @Override - public int getLastInsertID() - { - PreparedStatement stmt = null; - int lastInsertID = 0; - try - { - stmt = connection.prepareStatement("SELECT last_insert_rowid() as `ID`"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - lastInsertID = rs.getInt("ID"); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return lastInsertID; - } - - @Override - public ArrayList<NormalPayment> getPayments(int year, int month) - { - PreparedStatement stmt = null; - - ArrayList<NormalPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM payment WHERE strftime('%Y', Date) = ? AND strftime('%m', Date) = ?;"); - stmt.setString(1, String.format("%02d", year)); - stmt.setString(2, String.format("%02d", month)); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - String description = rs.getString("Description"); - - results.add(new NormalPayment(resultID, amount, date, categoryID, name, description)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - @Override - public ArrayList<RepeatingPaymentEntry> getRepeatingPayments(int year, int month) - { - PreparedStatement stmt = null; - - ArrayList<RepeatingPaymentEntry> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT repeating_entry.ID, repeating_entry.RepeatingPaymentID, repeating_entry.Date, repeating_payment.Name, repeating_payment.CategoryID, repeating_payment.Amount, repeating_payment.RepeatInterval, repeating_payment.RepeatEndDate, repeating_payment.RepeatMonthDay, repeating_payment.Description FROM repeating_entry, repeating_payment WHERE repeating_entry.RepeatingPaymentID = repeating_payment.ID AND strftime('%Y', repeating_entry.Date) = ? AND strftime('%m', repeating_entry.Date) = ?;"); - stmt.setString(1, String.format("%02d", year)); - stmt.setString(2, String.format("%02d", month)); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - int repeatingPaymentID = rs.getInt("repeatingPaymentID"); - String name = rs.getString("Name"); - String description = rs.getString("Description"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - int repeatInterval = rs.getInt("RepeatInterval"); - String repeatEndDate = rs.getString("RepeatEndDate"); - int repeatMonthDay = rs.getInt("RepeatMonthDay"); - - results.add(new RepeatingPaymentEntry(resultID, repeatingPaymentID, date, amount, categoryID, name, description, repeatInterval, repeatEndDate, repeatMonthDay)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - @Override - public ArrayList<NormalPayment> getPaymentsBetween(String startDate, String endDate) - { - PreparedStatement stmt = null; - - ArrayList<NormalPayment> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM payment WHERE Date BETWEEN ? AND ?;"); - stmt.setString(1, startDate); - stmt.setString(2, endDate); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - String name = rs.getString("Name"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - String description = rs.getString("Description"); - - results.add(new NormalPayment(resultID, amount, date, categoryID, name, description)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - @Override - public ArrayList<RepeatingPaymentEntry> getRepeatingPaymentsBetween(String startDate, String endDate) - { - PreparedStatement stmt = null; - - ArrayList<RepeatingPaymentEntry> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT repeating_entry.ID, repeating_entry.RepeatingPaymentID, repeating_entry.Date, repeating_payment.Name, repeating_payment.CategoryID, repeating_payment.Amount, repeating_payment.RepeatInterval, repeating_payment.RepeatEndDate, repeating_payment.RepeatMonthDay, repeating_payment.Description FROM repeating_entry, repeating_payment WHERE repeating_entry.RepeatingPaymentID = repeating_payment.ID AND repeating_entry.Date BETWEEN ? AND ?;"); - stmt.setString(1, startDate); - stmt.setString(2, endDate); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int resultID = rs.getInt("ID"); - int repeatingPaymentID = rs.getInt("repeatingPaymentID"); - String name = rs.getString("Name"); - String description = rs.getString("Description"); - int amount = rs.getInt("amount"); - String date = rs.getString("Date"); - int categoryID = rs.getInt("CategoryID"); - int repeatInterval = rs.getInt("RepeatInterval"); - String repeatEndDate = rs.getString("RepeatEndDate"); - int repeatMonthDay = rs.getInt("RepeatMonthDay"); - - results.add(new RepeatingPaymentEntry(resultID, repeatingPaymentID, date, amount, categoryID, name, description,repeatInterval, repeatEndDate, repeatMonthDay)); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - @Override - public void deleteDatabase() - { - Statement stmt = null; - String tableCategory = "DROP TABLE IF EXISTS category;"; - String tablePayment = "DROP TABLE IF EXISTS payment;"; - String tableRepeatingPayment = "DROP TABLE IF EXISTS repeating_payment;"; - String tableRepeatingEntry = "DROP TABLE IF EXISTS repeating_entry;"; - String tableTag = "DROP TABLE IF EXISTS tag;"; - String tableTagMatch = "DROP TABLE IF EXISTS tag_match;"; - try - { - stmt = connection.createStatement(); - stmt.execute(tableCategory); - Logger.info("Deleted table: category"); - stmt.execute(tablePayment); - Logger.info("Deleted table: payment"); - stmt.execute(tableRepeatingPayment); - Logger.info("Deleted table: repeating_payment"); - stmt.execute(tableRepeatingEntry); - Logger.info("Deleted table: repeating_entry"); - stmt.execute(tableTag); - Logger.info("Deleted table: tag"); - stmt.execute(tableTagMatch); - Logger.info("Deleted table: tag_match"); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/DatabaseTagHandler.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/DatabaseTagHandler.java deleted file mode 100644 index 4b65d9132..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/DatabaseTagHandler.java +++ /dev/null @@ -1,412 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.taghandler; - -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import logger.Logger; - -public abstract class DatabaseTagHandler -{ - Connection connection; - Settings settings; - - public DatabaseTagHandler(Settings settings) throws IllegalStateException - { - this.settings = settings; - } - - public void connect() - { - try - { - if(connection == null || connection.isClosed()) - { - this.connection = Utils.getDatabaseConnection(settings); - } - } - catch(Exception e) - { - Logger.error(e); - throw new IllegalStateException("Cannot connect the database!", e); - } - } - - public void closeConnection() - { - try - { - connection.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - } - - void closeStatement(Statement statement) - { - if(statement != null) - { - try - { - statement.close(); - } - catch(SQLException e) - { - } - } - } - - public abstract int getLastInsertID(); - - public ArrayList<Tag> getAllTags() - { - PreparedStatement stmt = null; - ArrayList<Tag> results = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM tag ORDER BY tag.Name"); - ResultSet rs = stmt.executeQuery(); - while(rs.next()) - { - int id = rs.getInt("ID"); - String name = rs.getString("Name"); - - results.add(new Tag(id, name)); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return results; - } - - public Tag getTagByID(int ID) - { - PreparedStatement stmt = null; - Tag tag = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM tag WHERE tag.ID= ?;"); - stmt.setInt(1, ID); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int id = rs.getInt("ID"); - String name = rs.getString("Name"); - - tag = new Tag(id, name); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return tag; - } - - public Tag getTagByName(String name) - { - PreparedStatement stmt = null; - Tag tag = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM tag WHERE tag.Name= ?;"); - stmt.setString(1, name); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int id = rs.getInt("ID"); - String newName = rs.getString("Name"); - - tag = new Tag(id, newName); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return tag; - } - - public void addTag(String name) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("INSERT INTO tag (Name) VALUES(?);"); - stmt.setString(1, name); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public void deleteTag(int ID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("DELETE FROM tag WHERE tag.ID = ?;"); - stmt.setInt(1, ID); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public boolean isMatchExistingForPaymentID(int tagID, int paymentID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM tag_match WHERE tag_match.Tag_ID = ? AND tag_match.Payment_ID = ?;"); - stmt.setInt(1, tagID); - stmt.setInt(2, paymentID); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - return true; - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return false; - } - - public boolean isMatchExistingForRepeatingPaymentID(int tagID, int repeatingPaymentID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM tag_match WHERE tag_match.Tag_ID = ? AND tag_match.RepeatingPayment_ID = ?;"); - stmt.setInt(1, tagID); - stmt.setInt(2, repeatingPaymentID); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - return true; - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return false; - } - - public ArrayList<Integer> getAllTagsForPayment(int paymentID) - { - PreparedStatement stmt = null; - ArrayList<Integer> tagIDs = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM tag_match WHERE tag_match.Payment_ID = ?;"); - stmt.setInt(1, paymentID); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int tagID = rs.getInt("Tag_ID"); - tagIDs.add(tagID); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return tagIDs; - } - - public ArrayList<Integer> getAllTagsForRepeatingPayment(int repeatingPaymentID) - { - PreparedStatement stmt = null; - ArrayList<Integer> tagIDs = new ArrayList<>(); - try - { - stmt = connection.prepareStatement("SELECT * FROM tag_match WHERE tag_match.RepeatingPayment_ID = ?;"); - stmt.setInt(1, repeatingPaymentID); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - int tagID = rs.getInt("Tag_ID"); - tagIDs.add(tagID); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return tagIDs; - } - - public void addTagMatchForPayment(int tagID, int paymentID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("INSERT INTO tag_match (Tag_ID, Payment_ID, RepeatingPayment_ID) VALUES(?, ?, ?);"); - stmt.setInt(1, tagID); - stmt.setInt(2, paymentID); - stmt.setInt(3, -1); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public void addTagMatchForRepeatingPayment(int tagID, int repeatingPaymentID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("INSERT INTO tag_match (Tag_ID, Payment_ID, RepeatingPayment_ID) VALUES(?, ?, ?);"); - stmt.setInt(1, tagID); - stmt.setInt(2, -1); - stmt.setInt(3, repeatingPaymentID); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public void deleteTagMatchForPayment(int tagID, int paymentID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("DELETE FROM tag_match WHERE tag_match.Tag_ID = ? AND tag_match.Payment_ID = ?;"); - stmt.setInt(1, tagID); - stmt.setInt(2, paymentID); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public void deleteTagMatchForRepeatingPayment(int tagID, int repeatingPaymentID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("DELETE FROM tag_match WHERE tag_match.Tag_ID = ? AND tag_match.repeatingPayment_ID = ?;"); - stmt.setInt(1, tagID); - stmt.setInt(2, repeatingPaymentID); - stmt.execute(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - } - - public boolean isTagUsedInMatches(int tagID) - { - PreparedStatement stmt = null; - try - { - stmt = connection.prepareStatement("SELECT * FROM tag_match WHERE tag_match.Tag_ID = ?;"); - stmt.setInt(1, tagID); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - return true; - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return false; - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/MysqlDatabaseTagHandler.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/MysqlDatabaseTagHandler.java deleted file mode 100644 index 70b319a02..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/MysqlDatabaseTagHandler.java +++ /dev/null @@ -1,45 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.taghandler; - -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - -import de.deadlocker8.budgetmasterserver.logic.Settings; -import logger.Logger; - -public class MysqlDatabaseTagHandler extends DatabaseTagHandler -{ - public MysqlDatabaseTagHandler(Settings settings) throws IllegalStateException - { - super(settings); - connect(); - } - - @Override - public int getLastInsertID() - { - PreparedStatement stmt = null; - int lastInsertID = 0; - try - { - stmt = connection.prepareStatement("SELECT LAST_INSERT_ID();"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - lastInsertID = rs.getInt("LAST_INSERT_ID()"); - } - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return lastInsertID; - } - -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/SqliteDatabaseTagHandler.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/SqliteDatabaseTagHandler.java deleted file mode 100644 index d3e3fcba6..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/logic/database/taghandler/SqliteDatabaseTagHandler.java +++ /dev/null @@ -1,46 +0,0 @@ -package de.deadlocker8.budgetmasterserver.logic.database.taghandler; - -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; - -import de.deadlocker8.budgetmasterserver.logic.Settings; -import logger.Logger; - -public class SqliteDatabaseTagHandler extends DatabaseTagHandler -{ - public SqliteDatabaseTagHandler(Settings settings) throws IllegalStateException - { - super(settings); - connect(); - } - - @Override - public int getLastInsertID() - { - PreparedStatement stmt = null; - int lastInsertID = 0; - try - { - stmt = connection.prepareStatement("SELECT last_insert_rowid() as `ID`"); - ResultSet rs = stmt.executeQuery(); - - while(rs.next()) - { - lastInsertID = rs.getInt("ID"); - } - rs.close(); - } - catch(SQLException e) - { - Logger.error(e); - } - finally - { - closeStatement(stmt); - } - - return lastInsertID; - } - -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/main/Main.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/main/Main.java deleted file mode 100644 index 6083c46fe..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/main/Main.java +++ /dev/null @@ -1,114 +0,0 @@ -package de.deadlocker8.budgetmasterserver.main; - -import java.io.File; -import java.io.IOException; -import java.net.URISyntaxException; -import java.nio.file.Files; -import java.nio.file.Path; -import java.nio.file.Paths; -import java.util.Locale; - -import de.deadlocker8.budgetmaster.logic.updater.VersionInformation; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import de.deadlocker8.budgetmasterserver.server.SparkServer; -import logger.FileOutputMode; -import logger.LogLevel; -import logger.Logger; -import tools.Localization; - -public class Main -{ - public static void main(String[] args) - { - //for category.none in class Category - Localization.init("de/deadlocker8/budgetmasterserver/"); - Localization.loadLanguage(Locale.ENGLISH); - - Logger.setLevel(LogLevel.ALL); - Logger.appInfo(Localization.getString("app.name"), - Localization.getString("version.name"), - Localization.getString("version.code"), - Localization.getString("version.date")); - try - { - File logFolder = Paths.get(SparkServer.class.getProtectionDomain().getCodeSource().getLocation().toURI()).getParent().toFile(); - Logger.enableFileOutput(logFolder, System.out, System.err, FileOutputMode.COMBINED); - } - catch(URISyntaxException e1) - { - Logger.error(e1); - } - - try - { - Path settingsPath = Paths.get(Settings.class.getProtectionDomain().getCodeSource().getLocation().toURI()).getParent().resolve("settings.json"); - - if(!Files.exists(settingsPath)) - { - Logger.warning("No settings file found! Creating default settings file..."); - try - { - Files.copy(SparkServer.class.getClassLoader().getResourceAsStream("de/deadlocker8/budgetmasterserver/settings.json"), settingsPath); - } - catch(IOException e) - { - Logger.error(e); - } - } - - Settings settings; - try - { - settings = Utils.loadSettings(); - boolean settingsChanged = false; - if(settings.getDatabaseType() == null) - { - settings.setDatabaseType("mysql"); - settingsChanged = true; - } - - if(!settings.getDatabaseType().equals("mysql") && !settings.getDatabaseType().equals("sqlite")) - { - Logger.error(settings.getDatabaseType() + " is no valid database type! (allowed types are: mysql and sqlite)"); - return; - } - - if(settings.getDatabaseType().equals("sqlite") && (settings.getDatabaseUrl() == null || settings.getDatabaseUrl().equals(""))) - { - Logger.warning("There is no save path specified for the sqlite database file. It will be saved as \"BudgetMaster.db\" in current directory."); - settings.setDatabaseUrl(System.getProperty("user.dir").replace("\\", "/") + "/BudgetMaster.db"); - settingsChanged = true; - } - - if(settings.getDatabaseUrl().contains("jdbc")) - { - settings.setDatabaseUrl(settings.getDatabaseUrl().replace("jdbc:mysql://", "")); - settingsChanged = true; - } - - - if(settingsChanged) - { - Logger.warning("Settings file is not up to date! Updated settings to new version."); - Utils.saveSettings(settings); - } - - VersionInformation versionInfo = new VersionInformation(); - versionInfo.setVersionCode(Integer.parseInt(Localization.getString("version.code"))); - versionInfo.setVersionName(Localization.getString("version.name")); - versionInfo.setDate(Localization.getString("version.date")); - - new SparkServer(settings, versionInfo); - } - catch(IOException | URISyntaxException e) - { - Logger.error(e); - } - } - catch(URISyntaxException e1) - { - Logger.error(e1); - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/SparkServer.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/SparkServer.java deleted file mode 100644 index d1c397ea7..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/SparkServer.java +++ /dev/null @@ -1,221 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server; - -import static spark.Spark.after; -import static spark.Spark.before; -import static spark.Spark.delete; -import static spark.Spark.get; -import static spark.Spark.halt; -import static spark.Spark.port; -import static spark.Spark.post; -import static spark.Spark.put; -import static spark.Spark.secure; - -import java.io.File; -import java.sql.Connection; - -import org.joda.time.DateTime; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; - -import de.deadlocker8.budgetmaster.logic.updater.VersionInformation; -import de.deadlocker8.budgetmaster.logic.utils.Helpers; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import de.deadlocker8.budgetmasterserver.logic.database.creator.DatabaseCreator; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.server.category.CategoryAdd; -import de.deadlocker8.budgetmasterserver.server.category.CategoryDelete; -import de.deadlocker8.budgetmasterserver.server.category.CategoryGet; -import de.deadlocker8.budgetmasterserver.server.category.CategoryGetAll; -import de.deadlocker8.budgetmasterserver.server.category.CategoryUpdate; -import de.deadlocker8.budgetmasterserver.server.categorybudget.CategoryBudgetGet; -import de.deadlocker8.budgetmasterserver.server.charts.CategoryInOutSumForMonth; -import de.deadlocker8.budgetmasterserver.server.charts.MonthInOutSum; -import de.deadlocker8.budgetmasterserver.server.database.DatabaseDelete; -import de.deadlocker8.budgetmasterserver.server.database.DatabaseExport; -import de.deadlocker8.budgetmasterserver.server.database.DatabaseImport; -import de.deadlocker8.budgetmasterserver.server.info.InformationGet; -import de.deadlocker8.budgetmasterserver.server.info.VersionGet; -import de.deadlocker8.budgetmasterserver.server.log.LogDelete; -import de.deadlocker8.budgetmasterserver.server.payment.normal.PaymentAdd; -import de.deadlocker8.budgetmasterserver.server.payment.normal.PaymentDelete; -import de.deadlocker8.budgetmasterserver.server.payment.normal.PaymentGet; -import de.deadlocker8.budgetmasterserver.server.payment.normal.PaymentUpdate; -import de.deadlocker8.budgetmasterserver.server.payment.repeating.RepeatingPaymentAdd; -import de.deadlocker8.budgetmasterserver.server.payment.repeating.RepeatingPaymentDelete; -import de.deadlocker8.budgetmasterserver.server.payment.repeating.RepeatingPaymentGet; -import de.deadlocker8.budgetmasterserver.server.payment.repeating.RepeatingPaymentGetAll; -import de.deadlocker8.budgetmasterserver.server.payment.search.PaymentMaxAmount; -import de.deadlocker8.budgetmasterserver.server.payment.search.PaymentSearch; -import de.deadlocker8.budgetmasterserver.server.rest.RestGet; -import de.deadlocker8.budgetmasterserver.server.shutdown.Shutdown; -import de.deadlocker8.budgetmasterserver.server.tag.match.TagMatchAddForPayment; -import de.deadlocker8.budgetmasterserver.server.tag.match.TagMatchAddForRepeatingPayment; -import de.deadlocker8.budgetmasterserver.server.tag.match.TagMatchDeleteForPayment; -import de.deadlocker8.budgetmasterserver.server.tag.match.TagMatchDeleteForRepeatingPayment; -import de.deadlocker8.budgetmasterserver.server.tag.match.TagMatchExistingForPayment; -import de.deadlocker8.budgetmasterserver.server.tag.match.TagMatchExistingForRepeatingPayment; -import de.deadlocker8.budgetmasterserver.server.tag.match.TagMatchGetAllForPayment; -import de.deadlocker8.budgetmasterserver.server.tag.match.TagMatchGetAllForRepeatingPayment; -import de.deadlocker8.budgetmasterserver.server.tag.tag.TagAdd; -import de.deadlocker8.budgetmasterserver.server.tag.tag.TagDelete; -import de.deadlocker8.budgetmasterserver.server.tag.tag.TagGet; -import de.deadlocker8.budgetmasterserver.server.tag.tag.TagGetAll; -import de.deadlocker8.budgetmasterserver.server.tag.tag.TagGetByName; -import de.deadlocker8.budgetmasterserver.server.updater.RepeatingPaymentUpdater; -import logger.Logger; -import spark.Spark; -import spark.route.RouteOverview; -import tools.HashUtils; - -public class SparkServer -{ - private Gson gson; - private boolean shutdownInProgress = false; - - public SparkServer(Settings settings, VersionInformation versionInfo) - { - Logger.info("Initializing SparkServer..."); - - gson = new GsonBuilder().setPrettyPrinting().create(); - - port(settings.getServerPort()); - - try - { - String filePath = settings.getKeystorePath(); - if(filePath.equals("")) - { - throw new Exception("empty string is no valid keystorePath"); - } - else if(settings.getKeystorePath().equals("default")) - { - Logger.info("Connections are secured with default keystore"); - Logger.warning("The Server is running with the default keystore. This is only recommended if the server is running in a local area network and is not exposed to the internet. Please check if this is intended."); - secure(SparkServer.class.getClassLoader().getResource("de/deadlocker8/budgetmasterserver/certificate/default_keystore.jks").toString(), settings.getKeystorePassword(), null, null); - } - else - { - Logger.info("Connections are secured with custom keystore"); - secure(new File(filePath).getAbsolutePath(), settings.getKeystorePassword(), null, null); - } - } - catch(Exception e) - { - Logger.error(e); - Logger.info("CANCELED server initialization"); - return; - } - - RouteOverview.enableRouteOverview(); - - Logger.info("Trying to connect to database (jdbc:" + settings.getDatabaseType() + "://" + settings.getDatabaseUrl() + ", databaseName: " + settings.getDatabaseName() + ")"); - - try - { - Connection connection = Utils.getDatabaseConnection(settings); - DatabaseCreator creator = Utils.getDatabaseCreator(connection, settings); - creator.createTables(); - Logger.info("Successfully initialized database (jdbc:" + settings.getDatabaseType() + "://" + settings.getDatabaseUrl() + ", databaseName: " + settings.getDatabaseName() + ")"); - connection.close(); - } - catch(Exception e) - { - Logger.error(e); - throw new IllegalStateException("Cannot connect the database!", e); - } - - before((request, response) -> { - String clientSecret = request.queryMap("secret").value(); - - if(clientSecret == null || !clientSecret.equals(HashUtils.hash(settings.getServerSecret(), Helpers.SALT))) - { - Logger.debug("Unauthorized request from " + request.ip()); - halt(401, "Unauthorized"); - } - - DatabaseHandler handler = Utils.getDatabaseHandler(settings); - RepeatingPaymentUpdater paymentUpdater = new RepeatingPaymentUpdater(handler); - paymentUpdater.updateRepeatingPayments(DateTime.now()); - handler.closeConnection(); - }); - - try - { - // Category - get("/category", new CategoryGetAll(Utils.getDatabaseHandler(settings), gson)); - get("/category/single", new CategoryGet(Utils.getDatabaseHandler(settings), gson)); - post("/category", new CategoryAdd(Utils.getDatabaseHandler(settings))); - put("/category", new CategoryUpdate(Utils.getDatabaseHandler(settings))); - delete("/category", new CategoryDelete(Utils.getDatabaseHandler(settings))); - - // Payment - get("/payment/search", new PaymentSearch(Utils.getDatabaseHandler(settings), Utils.getDatabaseTagHandler(settings))); - get("/payment/search/maxAmount", new PaymentMaxAmount(Utils.getDatabaseHandler(settings), gson)); - // Normal - get("/payment", new PaymentGet(Utils.getDatabaseHandler(settings), gson)); - post("/payment", new PaymentAdd(Utils.getDatabaseHandler(settings), gson)); - put("/payment", new PaymentUpdate(Utils.getDatabaseHandler(settings))); - delete("/payment", new PaymentDelete(Utils.getDatabaseHandler(settings), Utils.getDatabaseTagHandler(settings))); - - // Repeating - get("/repeatingpayment/single", new RepeatingPaymentGet(Utils.getDatabaseHandler(settings), gson)); - get("/repeatingpayment", new RepeatingPaymentGetAll(Utils.getDatabaseHandler(settings), gson)); - post("/repeatingpayment", new RepeatingPaymentAdd(Utils.getDatabaseHandler(settings), gson)); - delete("/repeatingpayment", new RepeatingPaymentDelete(Utils.getDatabaseHandler(settings), Utils.getDatabaseTagHandler(settings))); - - // CategoryBudget - get("/categorybudget", new CategoryBudgetGet(Utils.getDatabaseHandler(settings), gson)); - - // Rest - get("/rest", new RestGet(Utils.getDatabaseHandler(settings), gson)); - - // charts - get("/charts/categoryInOutSum", new CategoryInOutSumForMonth(Utils.getDatabaseHandler(settings), gson)); - get("/charts/monthInOutSum", new MonthInOutSum(Utils.getDatabaseHandler(settings), gson)); - - // tag - get("/tag/single", new TagGet(Utils.getDatabaseTagHandler(settings), gson)); - get("/tag/single/byName", new TagGetByName(Utils.getDatabaseTagHandler(settings), gson)); - get("/tag", new TagGetAll(Utils.getDatabaseTagHandler(settings), gson)); - post("/tag", new TagAdd(Utils.getDatabaseTagHandler(settings))); - delete("/tag", new TagDelete(Utils.getDatabaseTagHandler(settings))); - - // tag match - get("/tag/match/all/normal", new TagMatchGetAllForPayment(Utils.getDatabaseTagHandler(settings), gson)); - get("/tag/match/all/repeating", new TagMatchGetAllForRepeatingPayment(Utils.getDatabaseTagHandler(settings), gson)); - get("/tag/match/normal", new TagMatchExistingForPayment(Utils.getDatabaseTagHandler(settings), gson)); - get("/tag/match/repeating", new TagMatchExistingForRepeatingPayment(Utils.getDatabaseTagHandler(settings), gson)); - post("/tag/match/normal", new TagMatchAddForPayment(Utils.getDatabaseTagHandler(settings))); - post("/tag/match/repeating", new TagMatchAddForRepeatingPayment(Utils.getDatabaseTagHandler(settings))); - delete("/tag/match/normal", new TagMatchDeleteForPayment(Utils.getDatabaseTagHandler(settings))); - delete("/tag/match/repeating", new TagMatchDeleteForRepeatingPayment(Utils.getDatabaseTagHandler(settings))); - - // Database - get("/database", new DatabaseExport(settings, gson)); - post("/database", new DatabaseImport(Utils.getDatabaseHandler(settings), Utils.getDatabaseTagHandler(settings), gson)); - delete("/database", new DatabaseDelete(Utils.getDatabaseHandler(settings), settings)); - - get("/info", new InformationGet(gson, versionInfo, settings)); - get("/version", new VersionGet(gson, versionInfo)); - delete("/log", new LogDelete()); - get("/shutdown", new Shutdown(shutdownInProgress)); - } - catch(ClassNotFoundException e) - { - Logger.error(e); - } - - after((request, response) -> { - DatabaseHandler handler = Utils.getDatabaseHandler(settings); - RepeatingPaymentUpdater paymentUpdater = new RepeatingPaymentUpdater(handler); - paymentUpdater.updateRepeatingPayments(DateTime.now()); - handler.closeConnection(); - }); - - Spark.exception(Exception.class, (exception, request, response) -> { - Logger.error(exception); - }); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryAdd.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryAdd.java deleted file mode 100644 index 4a5e3fa25..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryAdd.java +++ /dev/null @@ -1,56 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.category; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class CategoryAdd implements AdvancedRoute -{ - private DatabaseHandler handler; - - public CategoryAdd(DatabaseHandler handler) - { - this.handler = handler; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("name") || !req.queryParams().contains("color")) - { - halt(400, "Bad Request"); - } - - try - { - handler.addCategory(req.queryMap("name").value(), "#" + req.queryMap("color").value()); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryDelete.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryDelete.java deleted file mode 100644 index e1b80572c..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryDelete.java +++ /dev/null @@ -1,68 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.category; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class CategoryDelete implements AdvancedRoute -{ - private DatabaseHandler handler; - - public CategoryDelete(DatabaseHandler handler) - { - this.handler = handler; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id")) - { - halt(400, "Bad Request"); - } - - int id = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - handler.deleteCategory(id); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryGet.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryGet.java deleted file mode 100644 index 1fd8abe32..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryGet.java +++ /dev/null @@ -1,73 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.category; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class CategoryGet implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public CategoryGet(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id")) - { - halt(400, "Bad Request"); - } - - int id = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - Category categeory = handler.getCategory(id); - - return gson.toJson(categeory); - } - catch(IllegalStateException e) - { - e.printStackTrace(); - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryGetAll.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryGetAll.java deleted file mode 100644 index 1e6af5f18..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryGetAll.java +++ /dev/null @@ -1,55 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.category; - -import static spark.Spark.halt; - -import java.util.ArrayList; -import java.util.Collections; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class CategoryGetAll implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public CategoryGetAll(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - try - { - ArrayList<Category> categories = handler.getCategories(); - Collections.sort(categories, (c1, c2) -> c1.getName().toLowerCase().compareTo(c2.getName().toLowerCase())); - - return gson.toJson(categories); - } - catch(IllegalStateException e) - { - halt(500, "Internal Server Error"); - } - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryUpdate.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryUpdate.java deleted file mode 100644 index 8f651e484..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/category/CategoryUpdate.java +++ /dev/null @@ -1,68 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.category; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class CategoryUpdate implements AdvancedRoute -{ - private DatabaseHandler handler; - - public CategoryUpdate(DatabaseHandler handler) - { - this.handler = handler; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id") ||!req.queryParams().contains("name") || !req.queryParams().contains("color")) - { - halt(400, "Bad Request"); - } - - int id = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - handler.updateCategory(id, req.queryMap("name").value(), "#" + req.queryMap("color").value()); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/categorybudget/CategoryBudgetGet.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/categorybudget/CategoryBudgetGet.java deleted file mode 100644 index 545365e59..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/categorybudget/CategoryBudgetGet.java +++ /dev/null @@ -1,118 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.categorybudget; - -import static spark.Spark.halt; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; -import java.util.Iterator; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.category.CategoryBudget; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class CategoryBudgetGet implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public CategoryBudgetGet(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("year") || !req.queryParams().contains("month")) - { - halt(400, "Bad Request"); - } - - int year = 0; - int month = 0; - - try - { - year = Integer.parseInt(req.queryMap("year").value()); - month = Integer.parseInt(req.queryMap("month").value()); - - if(year < 0 || month < 1 || month > 12) - { - halt(400, "Bad Request"); - } - - try - { - ArrayList<Payment> payments = new ArrayList<>(); - payments.addAll(handler.getPayments(year, month)); - payments.addAll(handler.getRepeatingPayments(year, month)); - - ArrayList<CategoryBudget> budgets = new ArrayList<>(); - - for(Category currentCategory : handler.getCategories()) - { - budgets.add(new CategoryBudget(currentCategory, 0)); - CategoryBudget currentBudget = budgets.get(budgets.size() - 1); - for(Payment currentPayment : payments) - { - if(currentCategory.getID() == currentPayment.getCategoryID()) - { - currentBudget.setBudget(currentBudget.getBudget() + currentPayment.getAmount()); - } - } - } - - // filter empty categories - Iterator<CategoryBudget> iterator = budgets.iterator(); - while(iterator.hasNext()) - { - if(iterator.next().getBudget() == 0) - { - iterator.remove(); - } - } - - Collections.sort(budgets, new Comparator<CategoryBudget>() - { - @Override - public int compare(CategoryBudget budget1, CategoryBudget budget2) - { - return Double.compare(budget1.getBudget(), budget2.getBudget()); - } - }); - - return gson.toJson(budgets); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/charts/CategoryInOutSumForMonth.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/charts/CategoryInOutSumForMonth.java deleted file mode 100644 index 6aad5ea8a..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/charts/CategoryInOutSumForMonth.java +++ /dev/null @@ -1,86 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.charts; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.charts.CategoryInOutSum; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class CategoryInOutSumForMonth implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public CategoryInOutSumForMonth(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("startDate") || !req.queryParams().contains("endDate")) - { - halt(400, "Bad Request"); - } - - try - { - ArrayList<Payment> payments = new ArrayList<>(); - payments.addAll(handler.getPaymentsBetween(req.queryMap("startDate").value(), req.queryMap("endDate").value())); - payments.addAll(handler.getRepeatingPaymentsBetween(req.queryMap("startDate").value(), req.queryMap("endDate").value())); - - ArrayList<CategoryInOutSum> inOutSums = new ArrayList<>(); - - for(Category currentCategory : handler.getCategories()) - { - inOutSums.add(new CategoryInOutSum(currentCategory.getID(), currentCategory.getName(), currentCategory.getColor(), 0, 0)); - CategoryInOutSum currentInOutSum = inOutSums.get(inOutSums.size() - 1); - for(Payment currentPayment : payments) - { - if(currentCategory.getID() == currentPayment.getCategoryID()) - { - int amount = currentPayment.getAmount(); - if(amount > 0) - { - currentInOutSum.setBudgetIN(currentInOutSum.getBudgetIN() + amount); - } - else - { - currentInOutSum.setBudgetOUT(currentInOutSum.getBudgetOUT() + amount); - } - } - } - } - - return gson.toJson(inOutSums); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/charts/MonthInOutSum.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/charts/MonthInOutSum.java deleted file mode 100644 index 292fae1f3..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/charts/MonthInOutSum.java +++ /dev/null @@ -1,100 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.charts; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import org.joda.time.DateTime; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.charts.CategoryInOutSum; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class MonthInOutSum implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public MonthInOutSum(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("startDate") || !req.queryParams().contains("endDate")) - { - halt(400, "Bad Request"); - } - - try - { - DateTime startDate = DateTime.parse(req.queryMap("startDate").value()).withDayOfMonth(1); - DateTime endDate = DateTime.parse(req.queryMap("endDate").value()).withDayOfMonth(1); - - ArrayList<de.deadlocker8.budgetmaster.logic.charts.MonthInOutSum> monthInOutSums = new ArrayList<>(); - - while(startDate.isBefore(endDate) || startDate.isEqual(endDate)) - { - ArrayList<Payment> currentMonthPayments = new ArrayList<>(); - currentMonthPayments.addAll(handler.getPayments(startDate.getYear(), startDate.getMonthOfYear())); - currentMonthPayments.addAll(handler.getRepeatingPayments(startDate.getYear(), startDate.getMonthOfYear())); - - ArrayList<CategoryInOutSum> sums = new ArrayList<>(); - - for(Category currentCategory : handler.getCategories()) - { - sums.add(new CategoryInOutSum(currentCategory.getID(), currentCategory.getName(), currentCategory.getColor(), 0, 0)); - CategoryInOutSum currentInOutSum = sums.get(sums.size() - 1); - for(Payment currentPayment : currentMonthPayments) - { - if(currentCategory.getID() == currentPayment.getCategoryID()) - { - int amount = currentPayment.getAmount(); - if(amount > 0) - { - currentInOutSum.setBudgetIN(currentInOutSum.getBudgetIN() + amount); - } - else - { - currentInOutSum.setBudgetOUT(currentInOutSum.getBudgetOUT() + amount); - } - } - } - } - - monthInOutSums.add(new de.deadlocker8.budgetmaster.logic.charts.MonthInOutSum(startDate.getMonthOfYear(), startDate.getYear(), sums)); - - startDate = startDate.plusMonths(1); - } - - return gson.toJson(monthInOutSums); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseDelete.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseDelete.java deleted file mode 100644 index c9a6c1379..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseDelete.java +++ /dev/null @@ -1,60 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.database; - -import static spark.Spark.halt; - -import java.sql.Connection; -import java.sql.SQLException; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import de.deadlocker8.budgetmasterserver.logic.database.creator.DatabaseCreator; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import logger.Logger; -import spark.Request; -import spark.Response; - -public class DatabaseDelete implements AdvancedRoute -{ - private DatabaseHandler handler; - private Settings settings; - - public DatabaseDelete(DatabaseHandler handler, Settings settings) - { - this.handler = handler; - this.settings = settings; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - try - { - handler.deleteDatabase(); - Connection connection = Utils.getDatabaseConnection(settings); - DatabaseCreator creator = Utils.getDatabaseCreator(connection, settings); - creator.createTables(); - Logger.info("Successfully initialized database (" + settings.getDatabaseUrl() + settings.getDatabaseName() + ")"); - - return ""; - } - catch(IllegalStateException | SQLException | ClassNotFoundException ex) - { - halt(500, "Internal Server Error"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseExport.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseExport.java deleted file mode 100644 index a108686d4..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseExport.java +++ /dev/null @@ -1,51 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.database; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.database.DatabaseExporter; -import logger.Logger; -import spark.Request; -import spark.Response; - -public class DatabaseExport implements AdvancedRoute -{ - private Settings settings; - private Gson gson; - - public DatabaseExport(Settings settings, Gson gson) - { - this.settings = settings; - this.gson = gson; - } - - @Override - public void before() - { - } - - @Override - public Object handleRequest(Request req, Response res) - { - try - { - DatabaseExporter exporter = new DatabaseExporter(settings); - return gson.toJson(exporter.exportDatabase()); - } - catch(Exception e) - { - Logger.error(e); - halt(500, "Internal Server Error"); - } - - return ""; - } - - @Override - public void after() - { - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseImport.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseImport.java deleted file mode 100644 index 65800d25d..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/database/DatabaseImport.java +++ /dev/null @@ -1,64 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.database; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.database.Database; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.DatabaseImporter; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import logger.Logger; -import spark.Request; -import spark.Response; - -public class DatabaseImport implements AdvancedRoute -{ - private DatabaseHandler handler; - private DatabaseTagHandler tagHandler; - private Gson gson; - - public DatabaseImport(DatabaseHandler handler, DatabaseTagHandler tagHandler, Gson gson) - { - this.handler = handler; - this.tagHandler = tagHandler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - String databaseJSON = req.body(); - - try - { - Database database = gson.fromJson(databaseJSON, Database.class); - - DatabaseImporter importer = new DatabaseImporter(handler, tagHandler); - importer.importDatabase(database); - return ""; - } - catch(Exception e) - { - Logger.error(e); - halt(500, "Internal Server Error"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/info/InformationGet.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/info/InformationGet.java deleted file mode 100644 index 93abe9865..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/info/InformationGet.java +++ /dev/null @@ -1,48 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.info; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.serverconnection.ServerInformation; -import de.deadlocker8.budgetmaster.logic.updater.VersionInformation; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import spark.Request; -import spark.Response; - -public class InformationGet implements AdvancedRoute -{ - private Gson gson; - private VersionInformation versionInfo; - private Settings settings; - - public InformationGet(Gson gson, VersionInformation versionInfo, Settings settings) - { - this.gson = gson; - this.versionInfo = versionInfo; - this.settings = settings; - } - - @Override - public void before() - { - } - - @Override - public Object handleRequest(Request req, Response res) - { - ServerInformation serverInfo = new ServerInformation(); - serverInfo.setDatabaseUrl(settings.getDatabaseUrl()); - serverInfo.setDatabaseName(settings.getDatabaseName()); - serverInfo.setDatabaseUsername(settings.getDatabaseUsername()); - serverInfo.setServerPort(settings.getServerPort()); - serverInfo.setKeystorePath(settings.getKeystorePath()); - serverInfo.setVersionInfo(versionInfo); - - return gson.toJson(serverInfo); - } - - @Override - public void after() - { - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/info/VersionGet.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/info/VersionGet.java deleted file mode 100644 index c2720a593..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/info/VersionGet.java +++ /dev/null @@ -1,36 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.info; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.updater.VersionInformation; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import spark.Request; -import spark.Response; - -public class VersionGet implements AdvancedRoute -{ - private Gson gson; - private VersionInformation versionInfo; - - public VersionGet(Gson gson, VersionInformation versionInfo) - { - this.gson = gson; - this.versionInfo = versionInfo; - } - - @Override - public void before() - { - } - - @Override - public Object handleRequest(Request req, Response res) - { - return gson.toJson(versionInfo); - } - - @Override - public void after() - { - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/log/LogDelete.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/log/LogDelete.java deleted file mode 100644 index daf3cd948..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/log/LogDelete.java +++ /dev/null @@ -1,42 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.log; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import logger.Logger; -import spark.Request; -import spark.Response; - -public class LogDelete implements AdvancedRoute -{ - public LogDelete() - { - - } - - @Override - public void before() - { - } - - @Override - public Object handleRequest(Request req, Response res) - { - try - { - Logger.clearLogFile(); - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - - return ""; - } - - @Override - public void after() - { - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentAdd.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentAdd.java deleted file mode 100644 index b6bc9fd85..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentAdd.java +++ /dev/null @@ -1,77 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.normal; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class PaymentAdd implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public PaymentAdd(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("amount") || - !req.queryParams().contains("date") || - !req.queryParams().contains("categoryID") || - !req.queryParams().contains("name") || - !req.queryParams().contains("description")) - { - halt(400, "Bad Request"); - } - - int amount = 0; - int categoryID = 0; - - try - { - amount = Integer.parseInt(req.queryMap("amount").value()); - categoryID = Integer.parseInt(req.queryMap("categoryID").value()); - - try - { - Integer id = handler.addNormalPayment(amount, - req.queryMap("date").value(), - categoryID, - req.queryMap("name").value(), - req.queryMap("description").value()); - - return gson.toJson(id); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentDelete.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentDelete.java deleted file mode 100644 index fe70574aa..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentDelete.java +++ /dev/null @@ -1,79 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.normal; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class PaymentDelete implements AdvancedRoute -{ - private DatabaseHandler handler; - private DatabaseTagHandler tagHandler; - - public PaymentDelete(DatabaseHandler handler, DatabaseTagHandler tagHandler) - { - this.handler = handler; - this.tagHandler = tagHandler; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id")) - { - halt(400, "Bad Request"); - } - - int id = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - handler.deletePayment(id); - ArrayList<Integer> tagIDs = tagHandler.getAllTagsForPayment(id); - for(Integer currentTagID : tagIDs) - { - tagHandler.deleteTagMatchForPayment(currentTagID, id); - } - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentGet.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentGet.java deleted file mode 100644 index d82b8842b..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentGet.java +++ /dev/null @@ -1,90 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.normal; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import org.joda.time.DateTime; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.server.updater.RepeatingPaymentUpdater; -import spark.Request; -import spark.Response; - -public class PaymentGet implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public PaymentGet(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("year") || !req.queryParams().contains("month")) - { - halt(400, "Bad Request"); - } - - int year = 0; - int month = 0; - - try - { - year = Integer.parseInt(req.queryMap("year").value()); - month = Integer.parseInt(req.queryMap("month").value()); - - if(year < 0 || month < 1 || month > 12) - { - halt(400, "Bad Request"); - } - - //refresh repeating entries - DateTime date = DateTime.now().withYear(year).withMonthOfYear(month); - date = date.dayOfMonth().withMaximumValue(); - if(date.isBefore(DateTime.now())) - { - date = DateTime.now().dayOfMonth().withMaximumValue(); - } - new RepeatingPaymentUpdater(handler).updateRepeatingPayments(date); - - try - { - ArrayList<NormalPayment> payments = new ArrayList<>(); - payments.addAll(handler.getPayments(year, month)); - - return gson.toJson(payments); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentUpdate.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentUpdate.java deleted file mode 100644 index e0e94e52d..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/normal/PaymentUpdate.java +++ /dev/null @@ -1,82 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.normal; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class PaymentUpdate implements AdvancedRoute -{ - private DatabaseHandler handler; - - public PaymentUpdate(DatabaseHandler handler) - { - this.handler = handler; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id") || - !req.queryParams().contains("amount") || - !req.queryParams().contains("date") || - !req.queryParams().contains("categoryID") || - !req.queryParams().contains("name") || - !req.queryParams().contains("description")) - { - halt(400, "Bad Request"); - } - - int id = -1; - int amount = 0; - int categoryID = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - amount = Integer.parseInt(req.queryMap("amount").value()); - categoryID = Integer.parseInt(req.queryMap("categoryID").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - handler.updateNormalPayment(id, - amount, - req.queryMap("date").value(), - categoryID, - req.queryMap("name").value(), - req.queryMap("description").value()); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentAdd.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentAdd.java deleted file mode 100644 index 05c1bd614..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentAdd.java +++ /dev/null @@ -1,81 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.repeating; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class RepeatingPaymentAdd implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public RepeatingPaymentAdd(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("amount") - || !req.queryParams().contains("date") - || !req.queryParams().contains("categoryID") - || !req.queryParams().contains("name") - || !req.queryParams().contains("repeatInterval") - || !req.queryParams().contains("repeatEndDate") - || !req.queryParams().contains("repeatMonthDay") - || !req.queryParams().contains("description")) - { - halt(400, "Bad Request"); - } - - int amount = 0; - int categoryID = 0; - int repeatInterval = 0; - int repeatMonthDay = 0; - - try - { - amount = Integer.parseInt(req.queryMap("amount").value()); - categoryID = Integer.parseInt(req.queryMap("categoryID").value()); - repeatInterval = Integer.parseInt(req.queryMap("repeatInterval").value()); - repeatMonthDay = Integer.parseInt(req.queryMap("repeatMonthDay").value()); - - try - { - Integer id = handler.addRepeatingPayment(amount, req.queryMap("date").value(), categoryID, req.queryMap("name").value(), req.queryMap("description").value(), repeatInterval, req.queryMap("repeatEndDate").value(), repeatMonthDay); - - return gson.toJson(id); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - e.printStackTrace(); - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentDelete.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentDelete.java deleted file mode 100644 index 1ba52b1a2..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentDelete.java +++ /dev/null @@ -1,80 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.repeating; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class RepeatingPaymentDelete implements AdvancedRoute -{ - private DatabaseHandler handler; - private DatabaseTagHandler tagHandler; - - public RepeatingPaymentDelete(DatabaseHandler handler, DatabaseTagHandler tagHandler) - { - this.handler = handler; - this.tagHandler = tagHandler; - } - - @Override - public void before() - { - handler.connect(); - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id")) - { - halt(400, "Bad Request"); - } - - int id = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - handler.deleteRepeatingPayment(id); - ArrayList<Integer> tagIDs = tagHandler.getAllTagsForRepeatingPayment(id); - for(Integer currentTagID : tagIDs) - { - tagHandler.deleteTagMatchForRepeatingPayment(currentTagID, id); - } - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentGet.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentGet.java deleted file mode 100644 index f1ef2b2a3..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentGet.java +++ /dev/null @@ -1,73 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.repeating; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class RepeatingPaymentGet implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public RepeatingPaymentGet(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id")) - { - halt(400, "Bad Request"); - } - - int id = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - RepeatingPayment payment = handler.getRepeatingPayment(id); - - return gson.toJson(payment); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentGetAll.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentGetAll.java deleted file mode 100644 index 88dbe39ff..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/repeating/RepeatingPaymentGetAll.java +++ /dev/null @@ -1,90 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.repeating; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import org.joda.time.DateTime; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPaymentEntry; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.server.updater.RepeatingPaymentUpdater; -import spark.Request; -import spark.Response; - -public class RepeatingPaymentGetAll implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public RepeatingPaymentGetAll(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("year") || !req.queryParams().contains("month")) - { - halt(400, "Bad Request"); - } - - int year = 0; - int month = 0; - - try - { - year = Integer.parseInt(req.queryMap("year").value()); - month = Integer.parseInt(req.queryMap("month").value()); - - if(year < 0 || month < 1 || month > 12) - { - halt(400, "Bad Request"); - } - - //refresh repeating entries - DateTime date = DateTime.now().withYear(year).withMonthOfYear(month); - date = date.dayOfMonth().withMaximumValue(); - if(date.isBefore(DateTime.now())) - { - date = DateTime.now().dayOfMonth().withMaximumValue(); - } - new RepeatingPaymentUpdater(handler).updateRepeatingPayments(date); - - try - { - ArrayList<RepeatingPaymentEntry> payments = new ArrayList<>(); - payments.addAll(handler.getRepeatingPayments(year, month)); - - return gson.toJson(payments); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/search/PaymentMaxAmount.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/search/PaymentMaxAmount.java deleted file mode 100644 index e64331e25..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/search/PaymentMaxAmount.java +++ /dev/null @@ -1,58 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.search; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class PaymentMaxAmount implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public PaymentMaxAmount(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - try - { - int maxNormal = handler.getNormalPaymentMaxAmount(); - int maxRepeating = handler.getRepeatingPaymentMaxAmount(); - - int max = maxNormal; - if(maxRepeating > max) - { - max = maxRepeating; - } - //plus 1 to allow all amounts up to maxNormal.99 € - return gson.toJson((max+1)/100); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/search/PaymentSearch.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/search/PaymentSearch.java deleted file mode 100644 index 4c9a8987e..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/payment/search/PaymentSearch.java +++ /dev/null @@ -1,203 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.payment.search; - -import static spark.Spark.halt; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.Comparator; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.Payment; -import de.deadlocker8.budgetmaster.logic.payment.PaymentJSONSerializer; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class PaymentSearch implements AdvancedRoute -{ - private DatabaseHandler handler; - private DatabaseTagHandler tagHandler; - - public PaymentSearch(DatabaseHandler handler, DatabaseTagHandler tagHandler) - { - this.handler = handler; - this.tagHandler = tagHandler; - } - - private boolean meetsCriteria(Request req, Payment payment) - { - boolean otherChecksThanAmount = false; - - if(req.queryMap("query").value().toLowerCase().equals("")) - return checkAmount(req, payment); - - if(!req.queryParams().contains("name") - && !req.queryParams().contains("description") - && !req.queryParams().contains("categoryName") - && !req.queryParams().contains("tags") - && !req.queryParams().contains("minAmount") - && !req.queryParams().contains("maxAmount")) - return false; - - if(req.queryParams().contains("name")) - { - otherChecksThanAmount = true; - if(payment.getName().toLowerCase().contains(req.queryMap("query").value().toLowerCase())) - { - return checkAmount(req, payment); - } - } - - if(req.queryParams().contains("description")) - { - otherChecksThanAmount = true; - if(payment.getDescription().toLowerCase().contains(req.queryMap("query").value().toLowerCase())) - { - return checkAmount(req, payment); - } - } - - if(req.queryParams().contains("categoryName")) - { - otherChecksThanAmount = true; - int id = payment.getCategoryID(); - //TODO - if(id == -1) - return false; - - Category category = handler.getCategory(payment.getCategoryID()); - if(category.getName().toLowerCase().contains(req.queryMap("query").value().toLowerCase())) - { - return checkAmount(req, payment); - } - } - - if(req.queryParams().contains("tags")) - { - otherChecksThanAmount = true; - ArrayList<Integer> tagIDs = new ArrayList<>(); - if(payment instanceof NormalPayment) - { - tagIDs = tagHandler.getAllTagsForPayment(payment.getID()); - } - else - { - tagIDs = tagHandler.getAllTagsForRepeatingPayment(payment.getID()); - } - - if(tagIDs.size() > 0) - { - for(Integer currentTagID : tagIDs) - { - Tag currentTag = tagHandler.getTagByID(currentTagID); - if(currentTag != null) - { - if(currentTag.getName().toLowerCase().contains(req.queryMap("query").value().toLowerCase())) - { - return checkAmount(req, payment); - } - } - } - } - } - - if(otherChecksThanAmount) - { - return false; - } - else - { - return checkAmount(req, payment); - } - } - - private boolean checkAmount(Request req, Payment payment) - { - if(req.queryParams().contains("minAmount") && req.queryParams().contains("maxAmount")) - { - try - { - int minAmount = Integer.parseInt(req.queryMap("minAmount").value()); - int maxAmount = Integer.parseInt(req.queryMap("maxAmount").value()); - int amount = Math.abs(payment.getAmount()); - - if(amount >= minAmount && amount <= maxAmount) - { - return true; - } - else - { - return false; - } - } - catch(NumberFormatException e) - { - halt(400, "Bad Request"); - } - } - - return true; - } - - @Override - public void before() - { - handler.connect(); - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - try - { - ArrayList<Payment> payments = new ArrayList<>(); - ArrayList<NormalPayment> normalPayments = handler.getAllNormalPayments(); - ArrayList<RepeatingPayment> repeatingPayments = handler.getAllRepeatingPayments(); - for(Payment currentPayment : normalPayments) - { - if(meetsCriteria(req, currentPayment)) - { - payments.add(currentPayment); - } - } - - for(Payment currentPayment : repeatingPayments) - { - if(meetsCriteria(req, currentPayment)) - { - payments.add(currentPayment); - } - } - - Collections.sort(payments, new Comparator<Payment>() - { - @Override - public int compare(Payment o1, Payment o2) - { - return o1.getDate().compareTo(o2.getDate()); - } - }); - - return PaymentJSONSerializer.serializePaymentList(payments); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/rest/RestGet.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/rest/RestGet.java deleted file mode 100644 index 03e26be34..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/rest/RestGet.java +++ /dev/null @@ -1,74 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.rest; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import spark.Request; -import spark.Response; - -public class RestGet implements AdvancedRoute -{ - private DatabaseHandler handler; - private Gson gson; - - public RestGet(DatabaseHandler handler, Gson gson) - { - this.handler = handler; - this.gson = gson; - } - - @Override - public void before() - { - handler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("year") || !req.queryParams().contains("month")) - { - halt(400, "Bad Request"); - } - - int year = 0; - int month = 0; - - try - { - year = Integer.parseInt(req.queryMap("year").value()); - month = Integer.parseInt(req.queryMap("month").value()); - - if(year < 0 || month < 1 || month > 12) - { - halt(400, "Bad Request"); - } - - try - { - int rest = handler.getRestForAllPreviousMonths(year, month); - - return gson.toJson(rest); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return null; - } - - @Override - public void after() - { - handler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/shutdown/Shutdown.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/shutdown/Shutdown.java deleted file mode 100644 index 9befe246b..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/shutdown/Shutdown.java +++ /dev/null @@ -1,57 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.shutdown; - -import java.util.Timer; -import java.util.TimerTask; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import logger.Logger; -import spark.Request; -import spark.Response; - -public class Shutdown implements AdvancedRoute -{ - private boolean shutdownInProgress; - - public Shutdown(boolean shutdownInProgress) - { - this.shutdownInProgress = shutdownInProgress; - } - - @Override - public void before() - { - } - - @Override - public Object handleRequest(Request req, Response res) - { - Logger.info("Shutting down server due to client request"); - if(!shutdownInProgress) - { - shutdownInProgress = true; - TimerTask task = new TimerTask() - { - @Override - public void run() - { - Logger.info("Shutdown DONE"); - System.exit(0); - } - }; - - Timer timer = new Timer(); - timer.schedule(task, 2000); - return ""; - } - else - { - Logger.info("Shutdown is already scheduled"); - return ""; - } - } - - @Override - public void after() - { - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchAddForPayment.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchAddForPayment.java deleted file mode 100644 index 85533edcc..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchAddForPayment.java +++ /dev/null @@ -1,64 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.match; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagMatchAddForPayment implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - - public TagMatchAddForPayment(DatabaseTagHandler tagHandler) - { - this.tagHandler = tagHandler; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("tagID") || !req.queryParams().contains("paymentID")) - { - halt(400, "Bad Request"); - } - - try - { - int tagID = Integer.parseInt(req.queryMap("tagID").value()); - int paymentID = Integer.parseInt(req.queryMap("paymentID").value()); - - if(tagID < 0 || paymentID < 0) - { - halt(400, "Bad Request"); - } - - tagHandler.addTagMatchForPayment(tagID, paymentID); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchAddForRepeatingPayment.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchAddForRepeatingPayment.java deleted file mode 100644 index f82989dce..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchAddForRepeatingPayment.java +++ /dev/null @@ -1,64 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.match; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagMatchAddForRepeatingPayment implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - - public TagMatchAddForRepeatingPayment(DatabaseTagHandler tagHandler) - { - this.tagHandler = tagHandler; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("tagID") || !req.queryParams().contains("repeatingPaymentID")) - { - halt(400, "Bad Request"); - } - - try - { - int tagID = Integer.parseInt(req.queryMap("tagID").value()); - int repeatingPaymentID = Integer.parseInt(req.queryMap("repeatingPaymentID").value()); - - if(tagID < 0 || repeatingPaymentID < 0) - { - halt(400, "Bad Request"); - } - - tagHandler.addTagMatchForRepeatingPayment(tagID, repeatingPaymentID); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchDeleteForPayment.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchDeleteForPayment.java deleted file mode 100644 index b607b3fc8..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchDeleteForPayment.java +++ /dev/null @@ -1,68 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.match; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import de.deadlocker8.budgetmasterserver.server.updater.TagUpdater; -import spark.Request; -import spark.Response; - -public class TagMatchDeleteForPayment implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - - public TagMatchDeleteForPayment(DatabaseTagHandler tagHandler) - { - this.tagHandler = tagHandler; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("tagID") || !req.queryParams().contains("paymentID")) - { - halt(400, "Bad Request"); - } - - try - { - int tagID = Integer.parseInt(req.queryMap("tagID").value()); - int paymentID = Integer.parseInt(req.queryMap("paymentID").value()); - - if(tagID < 0 || paymentID < 0) - { - halt(400, "Bad Request"); - } - - tagHandler.deleteTagMatchForPayment(tagID, paymentID); - - TagUpdater tagUpdater = new TagUpdater(tagHandler); - tagUpdater.deleteTagsIfNotReferenced(); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchDeleteForRepeatingPayment.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchDeleteForRepeatingPayment.java deleted file mode 100644 index e8d9b4dd6..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchDeleteForRepeatingPayment.java +++ /dev/null @@ -1,68 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.match; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import de.deadlocker8.budgetmasterserver.server.updater.TagUpdater; -import spark.Request; -import spark.Response; - -public class TagMatchDeleteForRepeatingPayment implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - - public TagMatchDeleteForRepeatingPayment(DatabaseTagHandler tagHandler) - { - this.tagHandler = tagHandler; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("tagID") || !req.queryParams().contains("repeatingPaymentID")) - { - halt(400, "Bad Request"); - } - - try - { - int tagID = Integer.parseInt(req.queryMap("tagID").value()); - int repeatingPaymentID = Integer.parseInt(req.queryMap("repeatingPaymentID").value()); - - if(tagID < 0 || repeatingPaymentID < 0) - { - halt(400, "Bad Request"); - } - - tagHandler.deleteTagMatchForRepeatingPayment(tagID, repeatingPaymentID); - - TagUpdater tagUpdater = new TagUpdater(tagHandler); - tagUpdater.deleteTagsIfNotReferenced(); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchExistingForPayment.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchExistingForPayment.java deleted file mode 100644 index c14317c7e..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchExistingForPayment.java +++ /dev/null @@ -1,66 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.match; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagMatchExistingForPayment implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - private Gson gson; - - public TagMatchExistingForPayment(DatabaseTagHandler tagHandler, Gson gson) - { - this.tagHandler = tagHandler; - this.gson = gson; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("tagID") || !req.queryParams().contains("paymentID")) - { - halt(400, "Bad Request"); - } - - try - { - int tagID = Integer.parseInt(req.queryMap("tagID").value()); - int paymentID = Integer.parseInt(req.queryMap("paymentID").value()); - - if(tagID < 0 || paymentID < 0) - { - halt(400, "Bad Request"); - } - - return gson.toJson(tagHandler.isMatchExistingForPaymentID(tagID, paymentID)); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return null; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchExistingForRepeatingPayment.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchExistingForRepeatingPayment.java deleted file mode 100644 index 6bc8dd8a2..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchExistingForRepeatingPayment.java +++ /dev/null @@ -1,66 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.match; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagMatchExistingForRepeatingPayment implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - private Gson gson; - - public TagMatchExistingForRepeatingPayment(DatabaseTagHandler tagHandler, Gson gson) - { - this.tagHandler = tagHandler; - this.gson = gson; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("tagID") || !req.queryParams().contains("repeatingPaymentID")) - { - halt(400, "Bad Request"); - } - - try - { - int tagID = Integer.parseInt(req.queryMap("tagID").value()); - int repeatingPaymentID = Integer.parseInt(req.queryMap("repeatingPaymentID").value()); - - if(tagID < 0 || repeatingPaymentID < 0) - { - halt(400, "Bad Request"); - } - - return gson.toJson(tagHandler.isMatchExistingForRepeatingPaymentID(tagID, repeatingPaymentID)); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return null; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchGetAllForPayment.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchGetAllForPayment.java deleted file mode 100644 index dcea960f4..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchGetAllForPayment.java +++ /dev/null @@ -1,79 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.match; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagMatchGetAllForPayment implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - private Gson gson; - - public TagMatchGetAllForPayment(DatabaseTagHandler tagHandler, Gson gson) - { - this.tagHandler = tagHandler; - this.gson = gson; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("paymentID")) - { - halt(400, "Bad Request"); - } - - try - { - int paymentID = Integer.parseInt(req.queryMap("paymentID").value()); - - if(paymentID < 0) - { - halt(400, "Bad Request"); - } - - ArrayList<Integer> tagIDs = tagHandler.getAllTagsForPayment(paymentID); - ArrayList<Tag> tags = new ArrayList<>(); - for(Integer currentTagID : tagIDs) - { - Tag currentTag = tagHandler.getTagByID(currentTagID); - if(currentTag != null) - { - tags.add(currentTag); - } - } - - return gson.toJson(tags); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return null; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchGetAllForRepeatingPayment.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchGetAllForRepeatingPayment.java deleted file mode 100644 index 45d3ec84f..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/match/TagMatchGetAllForRepeatingPayment.java +++ /dev/null @@ -1,79 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.match; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagMatchGetAllForRepeatingPayment implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - private Gson gson; - - public TagMatchGetAllForRepeatingPayment(DatabaseTagHandler tagHandler, Gson gson) - { - this.tagHandler = tagHandler; - this.gson = gson; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("repeatingPaymentID")) - { - halt(400, "Bad Request"); - } - - try - { - int repeatingPaymentID = Integer.parseInt(req.queryMap("repeatingPaymentID").value()); - - if(repeatingPaymentID < 0) - { - halt(400, "Bad Request"); - } - - ArrayList<Integer> tagIDs = tagHandler.getAllTagsForRepeatingPayment(repeatingPaymentID); - ArrayList<Tag> tags = new ArrayList<>(); - for(Integer currentTagID : tagIDs) - { - Tag currentTag = tagHandler.getTagByID(currentTagID); - if(currentTag != null) - { - tags.add(currentTag); - } - } - - return gson.toJson(tags); - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return null; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagAdd.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagAdd.java deleted file mode 100644 index 03dddec88..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagAdd.java +++ /dev/null @@ -1,56 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.tag; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagAdd implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - - public TagAdd(DatabaseTagHandler tagHandler) - { - this.tagHandler = tagHandler; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("name")) - { - halt(400, "Bad Request"); - } - - try - { - tagHandler.addTag(req.queryMap("name").value()); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagDelete.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagDelete.java deleted file mode 100644 index df498f1d5..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagDelete.java +++ /dev/null @@ -1,68 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.tag; - -import static spark.Spark.halt; - -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagDelete implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - - public TagDelete(DatabaseTagHandler tagHandler) - { - this.tagHandler = tagHandler; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id")) - { - halt(400, "Bad Request"); - } - - int id = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - tagHandler.deleteTag(id); - - return ""; - } - catch(IllegalStateException ex) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - - return ""; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGet.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGet.java deleted file mode 100644 index 1a6f419b1..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGet.java +++ /dev/null @@ -1,72 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.tag; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagGet implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - private Gson gson; - - public TagGet(DatabaseTagHandler tagHandler, Gson gson) - { - this.tagHandler = tagHandler; - this.gson = gson; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("id")) - { - halt(400, "Bad Request"); - } - - int id = -1; - - try - { - id = Integer.parseInt(req.queryMap("id").value()); - - if(id < 0) - { - halt(400, "Bad Request"); - } - - try - { - Tag tag = tagHandler.getTagByID(id); - - return gson.toJson(tag); - } - catch(IllegalStateException e) - { - halt(500, "Internal Server Error"); - } - } - catch(Exception e) - { - halt(400, "Bad Request"); - } - return null; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGetAll.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGetAll.java deleted file mode 100644 index 3fc9d1437..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGetAll.java +++ /dev/null @@ -1,54 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.tag; - -import static spark.Spark.halt; - -import java.util.ArrayList; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagGetAll implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - private Gson gson; - - public TagGetAll(DatabaseTagHandler tagHandler, Gson gson) - { - this.tagHandler = tagHandler; - this.gson = gson; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - try - { - ArrayList<Tag> tags = tagHandler.getAllTags(); - - return gson.toJson(tags); - } - catch(IllegalStateException e) - { - halt(500, "Internal Server Error"); - } - - return null; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGetByName.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGetByName.java deleted file mode 100644 index c2d834a1b..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/tag/tag/TagGetByName.java +++ /dev/null @@ -1,56 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.tag.tag; - -import static spark.Spark.halt; - -import com.google.gson.Gson; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.AdvancedRoute; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import spark.Request; -import spark.Response; - -public class TagGetByName implements AdvancedRoute -{ - private DatabaseTagHandler tagHandler; - private Gson gson; - - public TagGetByName(DatabaseTagHandler tagHandler, Gson gson) - { - this.tagHandler = tagHandler; - this.gson = gson; - } - - @Override - public void before() - { - tagHandler.connect(); - } - - @Override - public Object handleRequest(Request req, Response res) - { - if(!req.queryParams().contains("name")) - { - halt(400, "Bad Request"); - } - - try - { - Tag tag = tagHandler.getTagByName(req.queryMap("name").value()); - return gson.toJson(tag); - } - catch(Exception e) - { - halt(500, "Internal Server Error"); - } - - return null; - } - - @Override - public void after() - { - tagHandler.closeConnection(); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/updater/RepeatingPaymentUpdater.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/updater/RepeatingPaymentUpdater.java deleted file mode 100644 index 6baa1a309..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/updater/RepeatingPaymentUpdater.java +++ /dev/null @@ -1,102 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.updater; - -import java.util.ArrayList; - -import org.joda.time.DateTime; -import org.joda.time.Days; -import org.joda.time.Months; - -import de.deadlocker8.budgetmaster.logic.payment.LatestRepeatingPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import logger.Logger; - -public class RepeatingPaymentUpdater -{ - private DatabaseHandler handler; - - public RepeatingPaymentUpdater(DatabaseHandler handler) - { - this.handler = handler; - } - - @SuppressWarnings("unlikely-arg-type") - public void updateRepeatingPayments(DateTime now) - { - try - { - ArrayList<RepeatingPayment> repeatingPayments = handler.getAllRepeatingPayments(); - ArrayList<LatestRepeatingPayment> latest = handler.getLatestRepeatingPaymentEntries(); - - for(RepeatingPayment currentPayment : repeatingPayments) - { - DateTime date = now; - int index = latest.indexOf(currentPayment); - if(currentPayment.getRepeatEndDate() != null) - { - DateTime endDate = DateTime.parse(currentPayment.getRepeatEndDate()); - if(endDate.isBefore(date)) - { - date = endDate; - } - } - ArrayList<DateTime> correctDates = getCorrectRepeatingDates(currentPayment, date); - - if(index != -1) - { - LatestRepeatingPayment currentLatest = latest.get(index); - DateTime latestDate = DateTime.parse(currentLatest.getLastDate()); - - for(int i = correctDates.size()-1; i > 0; i--) - { - DateTime currentDate = correctDates.get(i); - if(currentDate.isBefore(latestDate) || currentDate.isEqual(latestDate)) - { - break; - } - - handler.addRepeatingPaymentEntry(currentLatest.getRepeatingPaymentID(), currentDate.toString("yyyy-MM-dd")); - } - } - else - { - for(DateTime currentDate : correctDates) - { - handler.addRepeatingPaymentEntry(currentPayment.getID(), currentDate.toString("yyyy-MM-dd")); - } - } - } - } - catch(IllegalStateException ex) - { - Logger.error(ex); - } - } - - private ArrayList<DateTime> getCorrectRepeatingDates(RepeatingPayment payment, DateTime now) - { - ArrayList<DateTime> dates = new ArrayList<>(); - DateTime startDate = DateTime.parse(payment.getDate()); - - //repeat every x days - if(payment.getRepeatInterval() != 0) - { - int numberOfDays = Days.daysBetween(startDate, now).getDays(); - int occurrences = numberOfDays / payment.getRepeatInterval(); - for(int i = 0; i <= occurrences; i++) - { - dates.add(startDate.plusDays(i * payment.getRepeatInterval())); - } - } - //repeat every month on day x - else - { - int numberOfMonths = Months.monthsBetween(startDate.withDayOfMonth(payment.getRepeatMonthDay()), now).getMonths(); - for(int i = 0; i <= numberOfMonths; i++) - { - dates.add(startDate.plusMonths(i)); - } - } - return dates; - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/updater/TagUpdater.java b/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/updater/TagUpdater.java deleted file mode 100644 index 1776c9be0..000000000 --- a/BudgetMasterServer/src/main/java/de/deadlocker8/budgetmasterserver/server/updater/TagUpdater.java +++ /dev/null @@ -1,28 +0,0 @@ -package de.deadlocker8.budgetmasterserver.server.updater; - -import java.util.ArrayList; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; - -public class TagUpdater -{ - private DatabaseTagHandler tagHandler; - - public TagUpdater(DatabaseTagHandler tagHandler) - { - this.tagHandler = tagHandler; - } - - public void deleteTagsIfNotReferenced() - { - ArrayList<Tag> tags = tagHandler.getAllTags(); - for(Tag currentTag : tags) - { - if(!tagHandler.isTagUsedInMatches(currentTag.getID())) - { - tagHandler.deleteTag(currentTag.getID()); - } - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/_en.properties b/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/_en.properties deleted file mode 100644 index 18fa55ffc..000000000 --- a/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/_en.properties +++ /dev/null @@ -1,8 +0,0 @@ -app.name=BudgetMasterServer -version.code=13 -version.name=1.8.0 -version.date=17.12.17 -author=Robert Goldmann - -category.none=No Category -category.rest=Rest \ No newline at end of file diff --git a/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/certificate/default_certificate.crt b/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/certificate/default_certificate.crt deleted file mode 100644 index e64160ce6..000000000 --- a/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/certificate/default_certificate.crt +++ /dev/null @@ -1,19 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDHjCCAgYCCQDMkgYSh6618zANBgkqhkiG9w0BAQsFADBQMQswCQYDVQQGEwJE -RTEUMBIGA1UECgwLZGVhZGxvY2tlcjgxFTATBgNVBAsMDEJ1ZGdldE1hc3RlcjEU -MBIGA1UEAwwLZGVhZGxvY2tlcjgwIBcNMTcxMTI1MTAwMzM3WhgPMjA4NTEyMTIx -MDAzMzdaMFAxCzAJBgNVBAYTAkRFMRQwEgYDVQQKDAtkZWFkbG9ja2VyODEVMBMG -A1UECwwMQnVkZ2V0TWFzdGVyMRQwEgYDVQQDDAtkZWFkbG9ja2VyODCCASIwDQYJ -KoZIhvcNAQEBBQADggEPADCCAQoCggEBALzI08zIpuoK2zbgbOtAAEfwYxRZTeJr -d0+iFAYPoCgDruh2ldO6BXGpanw1QYh0dFkW/o+DhfuYnFknpwxQrBWmlG/hjFbz -QdT+5zefc1q6rX7tOJMFUY1Qj5s3l1ZFHAuD4kOUr8lgDQqoc4l4B+WTXiXPYnJh -+DcTH6oBHJVu40YXsTyGwBW+DDBn5VvkrhNkqqfedL/qQ0Nl41UTLOSG5Lg7hezP -DQiG3mEbpugGbqWV5t2CgyPr0eZMQKKo2srKPm+aIDp0kWyOIR3B7Bv9Onp70/QM -etMyLa9QWJyaGHaFkl7xwBwCl2L209iTYmJSC1GZQ252uT701VwIX70CAwEAATAN -BgkqhkiG9w0BAQsFAAOCAQEAZSH6BN4J7vLhBnZAVXrqVv/+ALEuKOpWG9pk8jfF -k1DWvH6NwIjrgrY13e6iEai/YbplGrb3U90bDF+kSH3fCu+9DueoSRlZ/pPmMDGT -1hFXU0QNNV8rjWYlttndpzaHqnxitJ4ERBcts4sFLUFq+aIQdGYR5/gpQQcXmk10 -l3suT7O8NeSM7QGFO5rMm6k6XdLOBVvzaFwzuOwxOSvxV5dFwuRFuMxYddCnBGYH -kyPom4WfRKCvcbNT6RvJWQvBX5YOjIXpOV4gmwVtBbmhxrkSQvE56zrc2mewH6MN -dDTJmV5ZYlA4hXxSELOvmNqPE1SPtK3rNjtH55BtXuqvQQ== ------END CERTIFICATE----- diff --git a/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/certificate/default_keystore.jks b/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/certificate/default_keystore.jks deleted file mode 100644 index 5850e6d1244ed95c4abe60eaed0faee3ca80f247..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2150 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 diff --git a/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/settings.json b/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/settings.json deleted file mode 100644 index bbe6f030a..000000000 --- a/BudgetMasterServer/src/main/resources/de/deadlocker8/budgetmasterserver/settings.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "databaseType": "mysql", - "databaseUrl": "localhost:3306/", - "databaseName": "budgetmaster", - "databaseUsername": "root", - "databasePassword": "", - "serverPort": 9000, - "serverSecret": "BudgetMaster", - "keystorePath": "default", - "keystorePassword": "BudgetMaster" -} \ No newline at end of file diff --git a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseHandlerTest.java b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseHandlerTest.java deleted file mode 100644 index 216c65fc4..000000000 --- a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseHandlerTest.java +++ /dev/null @@ -1,282 +0,0 @@ -package de.deadlocker8.budgetmaster.tests.database; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.IOException; -import java.net.URISyntaxException; -import java.sql.Connection; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.Locale; - -import org.junit.After; -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.payment.LatestRepeatingPayment; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import de.deadlocker8.budgetmasterserver.logic.database.creator.DatabaseCreator; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import tools.Localization; - -public class DatabaseHandlerTest -{ - private static DatabaseHandler databaseHandler; - - @BeforeClass - public static void init() - { - try - { - //init - Settings settings = Utils.loadSettings(); - System.out.println(settings); - DatabaseHandler handler = Utils.getDatabaseHandler(settings); - handler.deleteDatabase(); - handler.closeConnection(); - Connection connection = Utils.getDatabaseConnection(settings); - DatabaseCreator creator = Utils.getDatabaseCreator(connection, settings); - creator.createTables(); - connection.close(); - databaseHandler = Utils.getDatabaseHandler(settings); - - Localization.init("de/deadlocker8/budgetmaster/"); - Localization.loadLanguage(Locale.ENGLISH); - } - catch(IOException | URISyntaxException | SQLException | ClassNotFoundException e) - { - fail(e.getMessage()); - } - } - - @Before - public void before() - { - databaseHandler.connect(); - } - - @After - public void after() - { - databaseHandler.closeConnection(); - } - - @Test - public void testLastInsertID() - { - Category expected = new Category("123 Tü+?est Category", "#FF0000"); - databaseHandler.addCategory(expected.getName(), expected.getColor()); - //3 because "NONE" and "Übertrag" has already been inserted at database creation - assertEquals(3, databaseHandler.getLastInsertID()); - } - - @Test - public void testCategory() - { - //add - Category expected = new Category("123 Tü+?est Category", "#FF0000"); - databaseHandler.addCategory(expected.getName(), expected.getColor()); - ArrayList<Category> categories = databaseHandler.getCategories(); - - //get - Category category = databaseHandler.getCategory(categories.get(categories.size()-1).getID()); - assertEquals(expected.getName(), category.getName()); - assertEquals(expected.getColor(), category.getColor()); - - //update - Category expectedUpdated = new Category(category.getID(), "456", "#00FF00"); - databaseHandler.updateCategory(expectedUpdated.getID(), expectedUpdated.getName(), expectedUpdated.getColor()); - category = databaseHandler.getCategory(expectedUpdated.getID()); - assertEquals(expectedUpdated.getName(), category.getName()); - assertEquals(expectedUpdated.getColor(), category.getColor()); - - //misc - category = databaseHandler.getCategory("NONE", "#FFFFFF"); - assertEquals(1, category.getID()); - - assertTrue(databaseHandler.categoryExists(1)); - } - - @Test - public void testDeleteCategory() - { - //add - Category expected = new Category("123 Tü+?est Category", "#FF0000"); - databaseHandler.addCategory(expected.getName(), expected.getColor()); - - int id = databaseHandler.getLastInsertID(); - - databaseHandler.deleteCategory(id); - Category category = databaseHandler.getCategory(id); - - assertNull(category); - } - - @Test - public void testNormalPayment() - { - //add - NormalPayment expectedPayment = new NormalPayment(1, 1000, "2017-03-01", 2, "Buchung", "Lorem Ipsum"); - - databaseHandler.addNormalPayment(expectedPayment.getAmount(), - expectedPayment.getDate(), - expectedPayment.getCategoryID(), - expectedPayment.getName(), - expectedPayment.getDescription()); - - int id = databaseHandler.getLastInsertID(); - - //get - NormalPayment payment = databaseHandler.getPayment(id); - - assertEquals(expectedPayment.getAmount(), payment.getAmount()); - assertEquals(expectedPayment.getDate(), payment.getDate()); - assertEquals(expectedPayment.getCategoryID(), payment.getCategoryID()); - assertEquals(expectedPayment.getName(), payment.getName()); - assertEquals(expectedPayment.getDescription(), payment.getDescription()); - - //update - NormalPayment expectedUpdated = new NormalPayment(id, 2000, "2017-03-02", 1, "Buchung 2", "Lorem Ipsum"); - databaseHandler.updateNormalPayment(expectedUpdated.getID(), - expectedUpdated.getAmount(), - expectedUpdated.getDate(), - expectedUpdated.getCategoryID(), - expectedUpdated.getName(), - expectedUpdated.getDescription()); - - payment = databaseHandler.getPayment(id); - - assertEquals(expectedUpdated.getAmount(), payment.getAmount()); - assertEquals(expectedUpdated.getDate(), payment.getDate()); - assertEquals(expectedUpdated.getCategoryID(), payment.getCategoryID()); - assertEquals(expectedUpdated.getName(), payment.getName()); - assertEquals(expectedUpdated.getDescription(), payment.getDescription()); - - //misc - assertEquals(1, databaseHandler.getPayments(2017, 03).size()); - assertEquals(0, databaseHandler.getPayments(2015, 03).size()); - - assertEquals(1, databaseHandler.getPaymentsBetween("2016-01-01", "2018-01-01").size()); - assertEquals(0, databaseHandler.getPaymentsBetween("2018-01-01", "2019-01-01").size()); - } - - @Test - public void testDeleteNormalPayment() - { - //add - NormalPayment expectedPayment = new NormalPayment(1, 1000, "2017-03-01", 2, "Buchung", "Lorem Ipsum"); - - databaseHandler.addNormalPayment(expectedPayment.getAmount(), - expectedPayment.getDate(), - expectedPayment.getCategoryID(), - expectedPayment.getName(), - expectedPayment.getDescription()); - - int id = databaseHandler.getLastInsertID(); - - databaseHandler.deletePayment(id); - NormalPayment payment = databaseHandler.getPayment(id); - - assertNull(payment); - } - - @Test - public void testRepeatingPayment() - { - //add - RepeatingPayment expectedPayment = new RepeatingPayment(1, 1000, "2017-03-01", 2, "Buchung", "Lorem Ipsum", 0, null, 15); - - databaseHandler.addRepeatingPayment(expectedPayment.getAmount(), - expectedPayment.getDate(), - expectedPayment.getCategoryID(), - expectedPayment.getName(), - expectedPayment.getDescription(), - expectedPayment.getRepeatInterval(), - expectedPayment.getRepeatEndDate(), - expectedPayment.getRepeatMonthDay()); - //get - RepeatingPayment payment = databaseHandler.getRepeatingPayment(databaseHandler.getLastInsertID()); - - assertEquals(expectedPayment.getAmount(), payment.getAmount()); - assertEquals(expectedPayment.getDate(), payment.getDate()); - assertEquals(expectedPayment.getCategoryID(), payment.getCategoryID()); - assertEquals(expectedPayment.getName(), payment.getName()); - assertEquals(expectedPayment.getDescription(), payment.getDescription()); - assertEquals(expectedPayment.getRepeatInterval(), payment.getRepeatInterval()); - assertEquals(expectedPayment.getRepeatEndDate(), payment.getRepeatEndDate()); - assertEquals(expectedPayment.getRepeatMonthDay(), payment.getRepeatMonthDay()); - - //RepeatingPaymentEntry - databaseHandler.addRepeatingPaymentEntry(expectedPayment.getID(), "2017-03-15"); - ArrayList<LatestRepeatingPayment> latestPayments = databaseHandler.getLatestRepeatingPaymentEntries(); - assertEquals(1, latestPayments.size()); - assertEquals(expectedPayment.getID(), latestPayments.get(0).getRepeatingPaymentID()); - assertEquals("2017-03-15", latestPayments.get(0).getLastDate()); - - //misc - assertEquals(1, databaseHandler.getRepeatingPayments(2017, 03).size()); - assertEquals(0, databaseHandler.getRepeatingPayments(2015, 03).size()); - - assertEquals(1, databaseHandler.getRepeatingPaymentsBetween("2016-01-01", "2018-01-01").size()); - assertEquals(0, databaseHandler.getRepeatingPaymentsBetween("2018-01-01", "2019-01-01").size()); - - assertEquals(1, databaseHandler.getAllRepeatingPayments().size()); - } - - @Test - public void testDeleteRepeatingPayment() - { - RepeatingPayment expectedPayment = new RepeatingPayment(1, 1000, "2017-03-01", 2, "Buchung", "Lorem Ipsum", 0, null, 15); - - databaseHandler.addRepeatingPayment(expectedPayment.getAmount(), - expectedPayment.getDate(), - expectedPayment.getCategoryID(), - expectedPayment.getName(), - expectedPayment.getDescription(), - expectedPayment.getRepeatInterval(), - expectedPayment.getRepeatEndDate(), - expectedPayment.getRepeatMonthDay()); - - int id = databaseHandler.getLastInsertID(); - - databaseHandler.deleteRepeatingPayment(id); - RepeatingPayment payment = databaseHandler.getRepeatingPayment(id); - - assertNull(payment); - } - - @Test - public void testRest() - { - //add payments for previous months - NormalPayment expectedPayment = new NormalPayment(1, 1000, "2017-03-01", 2, "Buchung", "Lorem Ipsum"); - databaseHandler.addNormalPayment(expectedPayment.getAmount(), - expectedPayment.getDate(), - expectedPayment.getCategoryID(), - expectedPayment.getName(), - expectedPayment.getDescription()); - int idPayment1 = databaseHandler.getLastInsertID(); - - expectedPayment = new NormalPayment(2, -800, "2017-02-01", 2, "Buchung", "Lorem Ipsum"); - databaseHandler.addNormalPayment(expectedPayment.getAmount(), - expectedPayment.getDate(), - expectedPayment.getCategoryID(), - expectedPayment.getName(), - expectedPayment.getDescription()); - int idPayment2 = databaseHandler.getLastInsertID(); - - assertEquals(1000, databaseHandler.getRest(2017, 3)); - assertEquals(200, databaseHandler.getRestForAllPreviousMonths(2017, 4)); - - databaseHandler.deletePayment(idPayment1); - databaseHandler.deletePayment(idPayment2); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseImportExportTest.java b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseImportExportTest.java deleted file mode 100644 index ad8214ff3..000000000 --- a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseImportExportTest.java +++ /dev/null @@ -1,168 +0,0 @@ -package de.deadlocker8.budgetmaster.tests.database; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.fail; - -import java.io.File; -import java.io.IOException; -import java.net.URISyntaxException; -import java.nio.file.Files; -import java.nio.file.Paths; -import java.sql.Connection; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.Locale; - -import org.junit.After; -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; - -import de.deadlocker8.budgetmaster.logic.category.Category; -import de.deadlocker8.budgetmaster.logic.database.Database; -import de.deadlocker8.budgetmaster.logic.payment.NormalPayment; -import de.deadlocker8.budgetmaster.logic.payment.RepeatingPayment; -import de.deadlocker8.budgetmaster.logic.utils.FileHelper; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import de.deadlocker8.budgetmasterserver.logic.database.DatabaseExporter; -import de.deadlocker8.budgetmasterserver.logic.database.DatabaseImporter; -import de.deadlocker8.budgetmasterserver.logic.database.creator.DatabaseCreator; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import tools.Localization; - -public class DatabaseImportExportTest -{ - private static Settings settings; - private static DatabaseHandler databaseHandler; - private static DatabaseTagHandler tagHandler; - - @BeforeClass - public static void init() - { - try - { - //init - settings = Utils.loadSettings(); - System.out.println(settings); - DatabaseHandler handler = Utils.getDatabaseHandler(settings); - handler.deleteDatabase(); - handler.closeConnection(); - Connection connection = Utils.getDatabaseConnection(settings); - DatabaseCreator creator = Utils.getDatabaseCreator(connection, settings); - creator.createTables(); - connection.close(); - databaseHandler = Utils.getDatabaseHandler(settings); - tagHandler = Utils.getDatabaseTagHandler(settings); - - Localization.init("de/deadlocker8/budgetmaster/"); - Localization.loadLanguage(Locale.ENGLISH); - } - catch(IOException | URISyntaxException | SQLException | ClassNotFoundException e) - { - fail(e.getMessage()); - } - } - - @Before - public void before() - { - databaseHandler.connect(); - tagHandler.connect(); - } - - @After - public void after() - { - databaseHandler.closeConnection(); - tagHandler.closeConnection(); - } - - @Test - public void testImport() - { - try - { - File file = Paths.get("src/test/resources/de/deadlocker8/budgetmaster/import.json").toFile(); - Database database = FileHelper.loadDatabaseJSON(file); - - DatabaseImporter importer = new DatabaseImporter(databaseHandler, tagHandler); - importer.importDatabase(database); - - //test category - Category expectedCategory = new Category(3, "123 Tü+?est Category", "#FF9500"); - ArrayList<Category> categories = databaseHandler.getCategories(); - - Category category = databaseHandler.getCategory(categories.get(categories.size()-1).getID()); - assertEquals(expectedCategory.getName(), category.getName()); - assertEquals(expectedCategory.getColor(), category.getColor()); - - //test normal payment - NormalPayment expectedPayment = new NormalPayment(1, 23, "2017-06-02", 3, "Test Normal", "Lorem Ipsum"); - NormalPayment payment = databaseHandler.getPayment(1); - assertEquals(expectedPayment.getAmount(), payment.getAmount()); - assertEquals(expectedPayment.getDate(), payment.getDate()); - assertEquals(expectedPayment.getCategoryID(), payment.getCategoryID()); - assertEquals(expectedPayment.getName(), payment.getName()); - assertEquals(expectedPayment.getDescription(), payment.getDescription()); - - //test repeating payment - RepeatingPayment expectedRepeatingPayment = new RepeatingPayment(1, -10012, "2017-06-01", 1, "Test Repeating", "Lorem Ipsum", 7, "2017-06-30", 0); - RepeatingPayment repeatingPayment = databaseHandler.getRepeatingPayment(1); - assertEquals(expectedRepeatingPayment.getAmount(), repeatingPayment.getAmount()); - assertEquals(expectedRepeatingPayment.getDate(), repeatingPayment.getDate()); - assertEquals(expectedRepeatingPayment.getCategoryID(), repeatingPayment.getCategoryID()); - assertEquals(expectedRepeatingPayment.getName(), repeatingPayment.getName()); - assertEquals(expectedRepeatingPayment.getDescription(), repeatingPayment.getDescription()); - assertEquals(expectedRepeatingPayment.getRepeatInterval(), repeatingPayment.getRepeatInterval()); - assertEquals(expectedRepeatingPayment.getRepeatEndDate(), repeatingPayment.getRepeatEndDate()); - assertEquals(expectedRepeatingPayment.getRepeatMonthDay(), repeatingPayment.getRepeatMonthDay()); - } - catch(Exception e) - { - e.printStackTrace(); - fail(e.getMessage()); - } - } - - @Test - public void testExport() - { - try - { - databaseHandler.deleteDatabase(); - databaseHandler.closeConnection(); - Connection connection = Utils.getDatabaseConnection(settings); - DatabaseCreator creator = Utils.getDatabaseCreator(connection, settings); - creator.createTables(); - connection.close(); - databaseHandler = Utils.getDatabaseHandler(settings);; - - File file = Paths.get("src/test/resources/de/deadlocker8/budgetmaster/import.json").toFile(); - Database database = FileHelper.loadDatabaseJSON(file); - - DatabaseImporter importer = new DatabaseImporter(databaseHandler, tagHandler); - importer.importDatabase(database); - - file = Paths.get("src/test/resources/de/deadlocker8/budgetmaster/export.json").toFile(); - DatabaseExporter exporter = new DatabaseExporter(settings); - Gson gson = new GsonBuilder().setPrettyPrinting().create(); - String databaseJSON = gson.toJson(exporter.exportDatabase()).replaceAll("\n", ""); - FileHelper.saveDatabaseJSON(file, databaseJSON); - - String expectedJSON = new String(Files.readAllBytes(Paths.get("src/test/resources/de/deadlocker8/budgetmaster/import.json"))); - String exportedJSON = new String(Files.readAllBytes(Paths.get("src/test/resources/de/deadlocker8/budgetmaster/export.json"))); - - assertEquals(expectedJSON, exportedJSON); - } - catch(Exception e) - { - e.printStackTrace(); - fail(e.getMessage()); - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseTagHandlerTest.java b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseTagHandlerTest.java deleted file mode 100644 index 5a6520d6a..000000000 --- a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/database/DatabaseTagHandlerTest.java +++ /dev/null @@ -1,144 +0,0 @@ -package de.deadlocker8.budgetmaster.tests.database; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertFalse; -import static org.junit.Assert.assertNull; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.io.IOException; -import java.net.URISyntaxException; -import java.sql.Connection; -import java.sql.SQLException; -import java.util.ArrayList; -import java.util.Locale; - -import org.junit.After; -import org.junit.Before; -import org.junit.BeforeClass; -import org.junit.Test; - -import de.deadlocker8.budgetmaster.logic.tag.Tag; -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; -import de.deadlocker8.budgetmasterserver.logic.database.creator.DatabaseCreator; -import de.deadlocker8.budgetmasterserver.logic.database.handler.DatabaseHandler; -import de.deadlocker8.budgetmasterserver.logic.database.taghandler.DatabaseTagHandler; -import tools.Localization; - -public class DatabaseTagHandlerTest -{ - private static DatabaseTagHandler tagHandler; - - @BeforeClass - public static void init() - { - try - { - //init - Settings settings = Utils.loadSettings(); - System.out.println(settings); - DatabaseHandler handler = Utils.getDatabaseHandler(settings); - handler.deleteDatabase(); - handler.closeConnection(); - Connection connection = Utils.getDatabaseConnection(settings); - DatabaseCreator creator = Utils.getDatabaseCreator(connection, settings); - creator.createTables(); - connection.close(); - tagHandler = Utils.getDatabaseTagHandler(settings); - - Localization.init("de/deadlocker8/budgetmaster/"); - Localization.loadLanguage(Locale.ENGLISH); - } - catch(IOException | URISyntaxException | SQLException | ClassNotFoundException e) - { - fail(e.getMessage()); - } - } - - @Before - public void before() - { - tagHandler.connect(); - } - - @After - public void after() - { - tagHandler.closeConnection(); - } - - @Test - public void testTag() - { - //add - Tag expected = new Tag(1, "sd836f4ds86f4sd86"); - tagHandler.addTag(expected.getName()); - ArrayList<Tag> tags = tagHandler.getAllTags(); - assertEquals(1, tags.size()); - - //get - Tag tag = tagHandler.getTagByID(1); - assertEquals(expected.getName(), tag.getName()); - - tag = tagHandler.getTagByName(expected.getName()); - assertEquals(1, tag.getID()); - } - - @Test - public void testDeleteCategory() - { - //add - Tag expected = new Tag(1, "115"); - tagHandler.addTag(expected.getName()); - - int id = tagHandler.getLastInsertID(); - - tagHandler.deleteTag(id); - Tag tag = tagHandler.getTagByID(id); - - assertNull(tag); - } - - @Test - public void testMatchForNormalPayment() - { - //add - Tag expected = new Tag(1, "wqeolugjf"); - tagHandler.addTag(expected.getName()); - int id = tagHandler.getLastInsertID(); - - tagHandler.addTagMatchForPayment(id, 1); - ArrayList<Integer> tags = tagHandler.getAllTagsForPayment(1); - assertEquals(1, tags.size()); - - assertTrue(tagHandler.isMatchExistingForPaymentID(id, 1)); - assertFalse(tagHandler.isMatchExistingForPaymentID(id, -3)); - - assertTrue(tagHandler.isTagUsedInMatches(id)); - - tagHandler.deleteTagMatchForPayment(id, 1); - assertFalse(tagHandler.isMatchExistingForPaymentID(id, 1)); - } - - @Test - public void testMatchRepeatingPayment() - { - //add - Tag expected = new Tag(1, "as5d4s5a4d"); - tagHandler.addTag(expected.getName()); - int id = tagHandler.getLastInsertID(); - - tagHandler.addTagMatchForRepeatingPayment(id, 1); - ArrayList<Integer> tags = tagHandler.getAllTagsForRepeatingPayment(1); - assertEquals(1, tags.size()); - - assertTrue(tagHandler.isMatchExistingForRepeatingPaymentID(id, 1)); - assertFalse(tagHandler.isMatchExistingForRepeatingPaymentID(id, -3)); - - assertTrue(tagHandler.isTagUsedInMatches(id)); - - tagHandler.deleteTagMatchForRepeatingPayment(id, 1); - assertFalse(tagHandler.isMatchExistingForRepeatingPaymentID(id, 1)); - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/settings/SettingsTest.java b/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/settings/SettingsTest.java deleted file mode 100644 index 7a9329b64..000000000 --- a/BudgetMasterServer/src/test/java/de/deadlocker8/budgetmaster/tests/settings/SettingsTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package de.deadlocker8.budgetmaster.tests.settings; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.fail; - -import java.io.IOException; -import java.net.URISyntaxException; - -import org.junit.Test; - -import de.deadlocker8.budgetmasterserver.logic.Settings; -import de.deadlocker8.budgetmasterserver.logic.Utils; - -public class SettingsTest -{ - @Test - public void testRead() - { - try - { - Settings settings = Utils.loadSettings(); - - Settings expectedSettings = new Settings(); - expectedSettings.setDatabaseType("mysql"); - expectedSettings.setDatabaseName("budgetmaster"); - expectedSettings.setDatabaseUrl("localhost:3306/"); - expectedSettings.setDatabaseUsername("root"); - expectedSettings.setDatabasePassword(""); - expectedSettings.setServerPort(9000); - expectedSettings.setServerSecret("geheim"); - expectedSettings.setKeystorePath("default"); - expectedSettings.setKeystorePassword("BudgetMaster"); - - assertEquals(expectedSettings, settings); - } - catch(IOException | URISyntaxException e) - { - fail(e.getMessage()); - } - } -} \ No newline at end of file diff --git a/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/_en.properties b/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/_en.properties deleted file mode 100644 index 9a6167b39..000000000 --- a/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/_en.properties +++ /dev/null @@ -1,8 +0,0 @@ -app.name=BudgetMasterServer -version.code=10 -version.name=1.6.0_alpha -version.date=31.08.17 -author=Robert Goldmann - -category.none=No Category -category.rest=Rest \ No newline at end of file diff --git a/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/export.json b/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/export.json deleted file mode 100644 index 2ec45ae72..000000000 --- a/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/export.json +++ /dev/null @@ -1 +0,0 @@ -{ "TYPE": "BUDGETMASTER_DATABASE", "VERSION": 2, "categories": [ { "ID": 1, "name": "NONE", "color": "#FFFFFF" }, { "ID": 2, "name": "Übertrag", "color": "#FFFF00" }, { "ID": 3, "name": "123 Tü+?est Category", "color": "#FF9500" } ], "normalPayments": [ { "ID": 1, "amount": 23, "date": "2017-06-02", "categoryID": 3, "name": "Test Normal", "description": "Lorem Ipsum" } ], "repeatingPayments": [ { "repeatInterval": 7, "repeatEndDate": "2017-06-30", "repeatMonthDay": 0, "ID": 1, "amount": -10012, "date": "2017-06-01", "categoryID": 1, "name": "Test Repeating", "description": "Lorem Ipsum" } ], "tags": [ { "ID": 1, "name": "Lorem Ipsum" }, { "ID": 2, "name": "123" } ], "tagMatches": [ { "tagID": 1, "paymentID": -1, "repeatingPaymentID": 1 }, { "tagID": 2, "paymentID": 1, "repeatingPaymentID": -1 } ]} \ No newline at end of file diff --git a/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/import.json b/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/import.json deleted file mode 100644 index 2ec45ae72..000000000 --- a/BudgetMasterServer/src/test/resources/de/deadlocker8/budgetmaster/import.json +++ /dev/null @@ -1 +0,0 @@ -{ "TYPE": "BUDGETMASTER_DATABASE", "VERSION": 2, "categories": [ { "ID": 1, "name": "NONE", "color": "#FFFFFF" }, { "ID": 2, "name": "Übertrag", "color": "#FFFF00" }, { "ID": 3, "name": "123 Tü+?est Category", "color": "#FF9500" } ], "normalPayments": [ { "ID": 1, "amount": 23, "date": "2017-06-02", "categoryID": 3, "name": "Test Normal", "description": "Lorem Ipsum" } ], "repeatingPayments": [ { "repeatInterval": 7, "repeatEndDate": "2017-06-30", "repeatMonthDay": 0, "ID": 1, "amount": -10012, "date": "2017-06-01", "categoryID": 1, "name": "Test Repeating", "description": "Lorem Ipsum" } ], "tags": [ { "ID": 1, "name": "Lorem Ipsum" }, { "ID": 2, "name": "123" } ], "tagMatches": [ { "tagID": 1, "paymentID": -1, "repeatingPaymentID": 1 }, { "tagID": 2, "paymentID": 1, "repeatingPaymentID": -1 } ]} \ No newline at end of file diff --git a/lib/Tools.jar b/lib/Tools.jar deleted file mode 100644 index 65c7881f2a2ae85bc3ded29e8fac64f62bb78fb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 574606 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%0D6cEB}b-ulzHjzw!@>{>nck`YZpK=&$^9qQCMF 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%0D>oy#7;to9OL#zkhOB^aLDA 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¬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�^m+7stc6+#oZ@>1Lqlr)El&_XNAGYZA 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	?Xyu0&Ewl3f<hWR#=NEWVtUoEaU!O-HQBHK_ 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 diff --git a/pom.xml b/pom.xml new file mode 100644 index 000000000..3a758b0af --- /dev/null +++ b/pom.xml @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <groupId>de.deadlocker8</groupId> + <artifactId>BudgetMaster</artifactId> + <version>2.0.0</version> + <name>BudgetMaster</name> + + <parent> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-parent</artifactId> + <version>1.5.10.RELEASE</version> + <relativePath/> + </parent> + + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> + <java.version>1.8</java.version> + </properties> + + <dependencies> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-web</artifactId> + </dependency> + + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-test</artifactId> + <scope>test</scope> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-maven-plugin</artifactId> + </plugin> + </plugins> + </build> +</project> \ No newline at end of file diff --git a/src/de/deadlocker8/budgetmaster/resources/changelog.json b/src/de/deadlocker8/budgetmaster/resources/changelog.json deleted file mode 100644 index 009874340..000000000 --- a/src/de/deadlocker8/budgetmaster/resources/changelog.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "1":"Client\n-implemented remaining budget overview\n-implemented payment overview\n-implemented categories\n-implemented settings\n\nServer\n-implemented database creation\n-implemented database queries\n-implemented functionality to calculate rest\n-implemented HTTPS\n-implemented server password\n", - "2":"Added functionality to filter payments\n", - "3":"-added charts\n-added database imprt/export/delete functionality\n-implemented better connection error handling\n-bugfixes\n", - "4":"-added possibility to export payments as pdf reports\n-added possibility to export charts as images\n-added unit tests\n-bugfixes\n-security improvements\n -improved database access\n -added password on start\n", - "5":"-bugfixes\n-reports can now include a budget calculation\n", - "6":"Fixed critical bug that prevents repeating payments from being correctly updated for future months.\n", - "7":"-localized all strings into external file\n-added english localization\n-added language chooser to settings\n-remove javafx.Color from server --> server should no run on linux with normal jdk\n-bugfixes:\n -[FIXED] - report budget is calculated incorrectly\n -[FIXED] - refresh after database imprt/delete missing\n -[FIXED] - critical bug concerning repeating payments\n", - "8":"bugfixes:\n -broken month chart if january is selected\n -wrong footer in month report\n -wrong initial file name for month report\n -server start failure\n", - "9":"-remember report table column order and selection\n-added Updater for easier client update procedure\n-bugfixes\n", - "10":"-added tag system (tag payments, suggestion of already used payments, ...)\n-added search for payments (search by name, description, category, tags and amount)\n-added better month/year picker (click on date to open)\n-payment description is now shown in payment tab\n-added hover effect for buttons in main stage to make more clear that they are clickable\n-replaced font in reports\n-settings are now scrollable\n-categories are now sorted alphabetically\n-bugfixes:\n -various bugs concerning the prefilled values of input fields\n-database import\n-compatibility issues with old ReportPreferences\n-available version label was not updated on manual update search\n-non running server leads to alert that states that the server version is not compatible\n", - "11": "\n" -} \ No newline at end of file diff --git a/src/de/deadlocker8/budgetmaster/resources/languages/_de.properties b/src/de/deadlocker8/budgetmaster/resources/languages/_de.properties deleted file mode 100644 index 8f048a4c1..000000000 --- a/src/de/deadlocker8/budgetmaster/resources/languages/_de.properties +++ /dev/null @@ -1,4 +0,0 @@ -app.name=BudgetMaster -version.code=13 -version.name=1.8.0 -version.date=17.12.17 \ No newline at end of file diff --git a/src/main/java/Main.java b/src/main/java/Main.java new file mode 100644 index 000000000..f1c8e7ec6 --- /dev/null +++ b/src/main/java/Main.java @@ -0,0 +1,21 @@ +import org.springframework.boot.*; +import org.springframework.boot.autoconfigure.*; +import org.springframework.stereotype.*; +import org.springframework.web.bind.annotation.*; + +@Controller +@EnableAutoConfiguration +public class Main +{ + @RequestMapping("/") + @ResponseBody + String home() + { + return "Hello World!"; + } + + public static void main(String[] args) throws Exception + { + SpringApplication.run(Main.class, args); + } +} \ No newline at end of file diff --git a/webUI/Logo.png b/webUI/Logo.png deleted file mode 100644 index 1ff7d25dfd01ac049876fefa71618f9abf0af3b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 405942 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 BNGAXQ diff --git a/webUI/Logo_with_text.png b/webUI/Logo_with_text.png deleted file mode 100644 index 117cde86d948ee4916497efe552cbc91ef2b86e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 605598 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%0ApA0$&b6Rfpn_qX+Ve60>7#J4x@t!XM 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 LS3j3^P6<r_Op}}d diff --git a/webUI/index.html b/webUI/index.html deleted file mode 100644 index 35d7a520b..000000000 --- a/webUI/index.html +++ /dev/null @@ -1,98 +0,0 @@ -<html> - <head> - <title>BudgetMaster</title> - <meta charset="UTF-8"/> - <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> - <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/css/materialize.css"> - <link type="text/css" rel="stylesheet" href="main.css"/> - <link type="text/css" rel="stylesheet" href="style.css"/> - <meta name="viewport" content="width=device-width, initial-scale=1.0"/> - </head> - <body class="budgetmaster-blue-light"> - <ul id="slide-out" class="side-nav fixed"> - <li><a href="" class="waves-effect" id="nav-logo-container"><img id="nav-logo" src="Logo_with_text.png"></a></li> - <li><div class="divider"></div></li> - <li class="active"><a href="#!" class="waves-effect"><i class="material-icons">home</i>Startseite</a></li> - <li><a href="#!" class="waves-effect"><i class="material-icons">list</i>Buchungen</a></li> - <li> - <ul class="collapsible collapsible-accordion no-padding"> - <li> - <a class="collapsible-header nav-padding"><i class="material-icons">show_chart</i>Diagramme</a> - <div class="collapsible-body nav-padding"> - <ul> - <li><a href="#!" class="waves-effect">Eingaben/Ausgaben nach Kategorien</a></li> - <li><a href="#!" class="waves-effect">Eingaben/Ausgaben pro Monat</a></li> - <li><a href="#!" class="waves-effect">Eingaben/Ausgaben nach Tags</a></li> - <li><a href="#!" class="waves-effect">Verbrauch nach Kategorien</a></li> - <li><a href="#!" class="waves-effect">Histogramm</a></li> - </ul> - </div> - </li> - </ul> - </li> - <li><a href="#!" class="waves-effect"><i class="material-icons">description</i>Berichte</a></li> - <li><a href="#!" class="waves-effect"><i class="material-icons">label</i>Kategorien</a></li> - <li><a href="#!" class="waves-effect"><i class="material-icons">settings</i>Einstellungen</a></li> - <li><div class="divider"></div></li> - <li><a href="#!" class="waves-effect"><i class="material-icons">lock</i>Logout</a></li> - </ul> - <a href="#" data-activates="slide-out" class="button-collapse show-on-large"><i class="material-icons">menu</i></a> - - <main> - <div class="card main-card"> - <div class="container"> - <div class="section center-align"> - <a href="" class="waves-effect grey-text text-darken-4"><i class="material-icons icon-chevron">chevron_left</i></a> - <a href="" class="waves-effect grey-text text-darken-4 date">September 2018</a> - <a href="" class="waves-effect grey-text text-darken-4"><i class="material-icons icon-chevron">chevron_right</i></a> - </div> - </div> - <div class="hide-on-small-only"><br></div> - <div class="container"> - <div class="row"> - <div class="col s12 m4"> - <div class="icon-block"> - <h1 class="center text-green"><i class="material-icons icon-budget">file_download</i></h1> - <h5 class="center budget">2350,15 €</h5> - <h5 class="center grey-text text-darken-1 budget-headline">Einnahmen</h5> - </div> - </div> - <div class="col s12 m4"> - <div class="icon-block"> - <h1 class="center text-red"><i class="material-icons icon-budget">file_upload</i></h1> - <h5 class="center budget">-576,33 €</h5> - <h5 class="center grey-text text-darken-1 budget-headline">Ausgaben</h5> - </div> - </div> - <div class="col s12 m4"> - <div class="icon-block"> - <h1 class="center budgetmaster-blue-text"><i class="material-icons icon-budget">account_balance</i></h1> - <h5 class="center budget">1773,82 €</h5> - <h5 class="center grey-text text-darken-1 budget-headline">Rest</h5> - </div> - </div> - </div> - <div class="hide-on-small-only"><br><br></div> - <div class="row"> - <div class="col s12"> - <div class="budget-bar-container"> - <div class="budget-bar color-green" style="width: 100%"></div> - </div> - <div class="budget-bar-container"> - <div class="budget-bar color-red" style="width: 25%"></div> - </div> - <div class="budget-bar-container"> - <div class="budget-bar budgetmaster-blue" style="width: 75%"></div> - </div> - </div> - </div> - </div> - </div> - </main> - - <!-- Scripts--> - <script src="https://code.jquery.com/jquery-2.1.1.min.js"></script> - <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/js/materialize.min.js"></script> - <script src="main.js"></script> - </body> -</html> \ No newline at end of file diff --git a/webUI/login.css b/webUI/login.css deleted file mode 100644 index 3c25e5685..000000000 --- a/webUI/login.css +++ /dev/null @@ -1,33 +0,0 @@ -body { - display: flex; - min-height: 100vh; - flex-direction: column; -} - -main { - flex: 1 0 auto; -} - -#logo-container { - height: 12vmin; -} - -#logo { - max-height: 10vmin; -} - -/* label focus color */ -.input-field input[type=password]:focus + label { - color: #212121 !important; -} -/* label underline focus color */ -.input-field input[type=password]:focus { - border-bottom: 1px solid #212121 !important; - box-shadow: 0 1px 0 0 #CCCCCC !important; -} - -.full-height { - height: 100%; - padding: 0; - margin: 0; -} \ No newline at end of file diff --git a/webUI/login.html b/webUI/login.html deleted file mode 100644 index 3ba52fa1f..000000000 --- a/webUI/login.html +++ /dev/null @@ -1,41 +0,0 @@ -<html> - <head> - <title>BudgetMaster - Login</title> - <meta charset="UTF-8"/> - <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> - <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/css/materialize.css"> - <link type="text/css" rel="stylesheet" href="main.css"/> - <link type="text/css" rel="stylesheet" href="login.css"/> - - <meta name="viewport" content="width=device-width, initial-scale=1.0"/> - </head> - <body class="budgetmaster-blue-light"> - <main> - <div class="row valign-wrapper full-height"> - <div class="col l4 offset-l4 m6 offset-m3 s10 offset-s1"> - <div class="card"> - <div class="card-content"> - <span class="card-title"> - <div id="logo-container" class="center-align"><img id="logo" src="Logo_with_text.png"></div> - </span> - <div class="row"> - <div class="input-field col s12"> - <input id="password" type="password" class="validate"> - <label for="password">Passwort</label> - </div> - </div> - <div class="right-align"> - <a class="waves-effect waves-light btn budgetmaster-blue"><i class="material-icons right">send</i>Login</a> - </div> - </div> - </div> - </div> - </div> - </main> - - <!-- Scripts--> - <script src="https://code.jquery.com/jquery-2.1.1.min.js"></script> - <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/js/materialize.min.js"></script> - <script src="main.js"></script> - </body> -</html> \ No newline at end of file diff --git a/webUI/main.css b/webUI/main.css deleted file mode 100644 index 24650f85a..000000000 --- a/webUI/main.css +++ /dev/null @@ -1,19 +0,0 @@ -.budgetmaster-blue { - background-color: #2E79B9; -} - -.budgetmaster-blue-text { - color: #2E79B9; -} - -.budgetmaster-blue-light { - background-color: rgba(46, 121, 185, 0.8); -} - -.btn:hover { - background-color: #70A3CF; -} - -.bold { - font-weight: bold; -} \ No newline at end of file diff --git a/webUI/main.js b/webUI/main.js deleted file mode 100644 index 831194ff0..000000000 --- a/webUI/main.js +++ /dev/null @@ -1,5 +0,0 @@ -$( document ).ready(function() { - $(".button-collapse").sideNav({ - menuWidth: 350, // Default is 300 - }); -}); \ No newline at end of file diff --git a/webUI/style.css b/webUI/style.css deleted file mode 100644 index b0481a6d1..000000000 --- a/webUI/style.css +++ /dev/null @@ -1,101 +0,0 @@ -body { - display: flex; - min-height: 100vh; - flex-direction: column; -} - -header, main, footer { - margin-left: 350px; -} - -@media only screen and (max-width: 992px) { - header, main, footer { - margin-left: 0; - } -} - -main { - flex: 1 0 auto; -} - -.main-card { - margin: auto; - width: 95%; - padding: 2rem; -} - -#nav-logo-container { - padding: 10px 0 10px 10px; - height: 100px !important; -} - -#nav-logo { - max-height: 80px; -} - -#logo { - max-height: 100px; -} - -.page-footer { - padding-top: 0; -} - -.nav-padding { - padding: 0 0 0 32px !important; -} - -.no-padding { - padding: 0; -} - -.no-margin-bottom { - margin-bottom: 0; -} - -.text-red { - color: #D82C29; -} - -.text-green { - color: #5cb85c; -} - -.color-red { - background-color: #D82C29; -} - -.color-green { - background-color: #5cb85c; -} - -.budget-bar-container { - margin: auto; - width: 85%; - height: 3%; -} - -.budget-bar { - height: 100%; -} - -.icon-budget { - font-size: 5.5vmin !important; -} - -.icon-chevron { - font-size: 6vmin !important; -} - -.date { - font-size: 4vmin; - text-transform: capitalize; -} - -.budget-headline { - font-size: 2.5vmin; -} - -.budget { - font-size: 3.5vmin; -} \ No newline at end of file -- GitLab