From a168c542f9331e7de12585f670ce491657b90fdd Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Mon, 7 Apr 2025 22:06:18 +0200 Subject: [PATCH] #774 - account overview: add filter controls --- .../resources/languages/base_de.properties | 2 + .../resources/languages/base_en.properties | 2 + .../main/resources/static/css/accounts.css | 8 +++ .../resources/templates/accounts/accounts.ftl | 64 ++++++++++++++++--- 4 files changed, 68 insertions(+), 8 deletions(-) diff --git a/BudgetMasterServer/src/main/resources/languages/base_de.properties b/BudgetMasterServer/src/main/resources/languages/base_de.properties index 6a6414c6f..564c62e90 100644 --- a/BudgetMasterServer/src/main/resources/languages/base_de.properties +++ b/BudgetMasterServer/src/main/resources/languages/base_de.properties @@ -371,6 +371,8 @@ account.all=Alle Konten account.tooltip.default=Als Standardkonto festlegen account.tooltip.endDate.soon=Das Enddatum für dieses Konto wird in {0} Tagen erreicht! account.tooltip.endDate.done=Das Enddatum für dieses Konto wurde vor {0} Tagen erreicht! +account.label.endDate.with=mit +account.label.endDate.without=ohne account.state.full.access=Vollzugriff account.state.read.only=Lesezugriff diff --git a/BudgetMasterServer/src/main/resources/languages/base_en.properties b/BudgetMasterServer/src/main/resources/languages/base_en.properties index 1b24c765e..f1169c119 100644 --- a/BudgetMasterServer/src/main/resources/languages/base_en.properties +++ b/BudgetMasterServer/src/main/resources/languages/base_en.properties @@ -370,6 +370,8 @@ account.all=All Accounts account.tooltip.default=Set as default account account.tooltip.endDate.soon=The end date for this account will be reached in {0} days! account.tooltip.endDate.done=The end date for this account was reached {0} days ago! +account.label.endDate.with=with +account.label.endDate.without=without account.state.full.access=Full access account.state.read.only=Read-only diff --git a/BudgetMasterServer/src/main/resources/static/css/accounts.css b/BudgetMasterServer/src/main/resources/static/css/accounts.css index 189526f80..7800c2330 100644 --- a/BudgetMasterServer/src/main/resources/static/css/accounts.css +++ b/BudgetMasterServer/src/main/resources/static/css/accounts.css @@ -31,3 +31,11 @@ border: 3px solid var(--color-text); line-height: 32px !important; } + +.account-container th { + vertical-align: top; +} + +.account-container th.vertical-align-middle { + vertical-align: middle; +} \ No newline at end of file diff --git a/BudgetMasterServer/src/main/resources/templates/accounts/accounts.ftl b/BudgetMasterServer/src/main/resources/templates/accounts/accounts.ftl index 215aa88ca..10880927e 100644 --- a/BudgetMasterServer/src/main/resources/templates/accounts/accounts.ftl +++ b/BudgetMasterServer/src/main/resources/templates/accounts/accounts.ftl @@ -25,20 +25,69 @@ <br> <div class="container account-container"> <table class="bordered"> - <thead> + <thead class="hide-on-med-and-down"> <tr> - <th>${locale.getString("account.new.label.state")}</th> - <th>${locale.getString("account.new.label.endDate")}</th> - <th>${locale.getString("account.new.label.icon")}</th> - <th>${locale.getString("account.new.label.name")}</th> - <th>${locale.getString("transaction.new.label.description")}</th> - <th>${locale.getString("categories.actions")}</th> + <th></th> + <th> + <div>${locale.getString("account.new.label.state")}</div> + <div> + <label> + <input type="checkbox" /> + <span><i class="fas fa-edit placeholder-icon-right"></i>${locale.getString("account.state.full.access")}</span> + </label> + </div> + <div> + <label> + <input type="checkbox" /> + <span><i class="fas fa-lock placeholder-icon-right"></i>${locale.getString("account.state.read.only")}</span> + </label> + </div> + <div> + <label> + <input type="checkbox" /> + <span><i class="far fa-eye-slash placeholder-icon-right"></i>${locale.getString("account.state.hidden")}</span> + </label> + </div> + </th> + <th> + <div>${locale.getString("account.new.label.endDate")}</div> + <div> + <label> + <input type="checkbox" /> + <span><i class="fas fa-bell placeholder-icon-right"></i>${locale.getString("account.label.endDate.with")}</span> + </label> + </div> + <div> + <label> + <input type="checkbox" /> + <span><i class="fas fa-bell-slash placeholder-icon-right"></i>${locale.getString("account.label.endDate.without")}</span> + </label> + </div> + </th> + <th> + <div>${locale.getString("account.new.label.name")}</div> + <div class="input-field"> + <input type="text" id="accounts-filter-name"> + </div> + </th> + <th> + <div>${locale.getString("transaction.new.label.description")}</div> + <div class="input-field"> + <input type="text" id="accounts-filter-description"> + </div> + </th> + <th class="vertical-align-middle"> + <button class="btn waves-effect waves-light background-green" type="submit" id="accounts-filter-button"> + <i class="fas fa-filter left"></i>${locale.getString("filter.apply")} + </button> + </th> </tr> </thead> <#list accounts as account> <#if (account.getType().name() == "CUSTOM")> <tr class="account-overview-row"> + <td><@customSelectMacros.accountIcon account account.getName() "text-blue"/></td> <td> <#if account.getAccountState().name() == "READ_ONLY"> <div class="placeholder-icon placeholder-icon-right"></div> @@ -58,7 +107,6 @@ <div class="placeholder-icon"></div> </#if> </td> - <td><@customSelectMacros.accountIcon account account.getName() "text-blue"/></td> <td>${account.getName()}</td> <td> <div class="truncate account-description"> -- GitLab