diff --git a/src/main/java/de/deadlocker8/budgetmaster/charts/ChartController.java b/src/main/java/de/deadlocker8/budgetmaster/charts/ChartController.java index d5b5bd1a79fc90a08292577d9fcb34a03d04730e..784975cabe491adc8905402db3614055a825494f 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/charts/ChartController.java +++ b/src/main/java/de/deadlocker8/budgetmaster/charts/ChartController.java @@ -67,6 +67,7 @@ public class ChartController extends BaseController model.addAttribute("chartSettings", defaultChartSettings); model.addAttribute("charts", charts); model.addAttribute("displayTypes", ChartDisplayType.values()); + model.addAttribute("groupTypes", ChartGroupType.values()); return "charts/charts"; } diff --git a/src/main/java/de/deadlocker8/budgetmaster/charts/ChartGroupType.java b/src/main/java/de/deadlocker8/budgetmaster/charts/ChartGroupType.java index 59d280591dca8b49dbd5c6d86f996b0cacf13504..b1f7e24adf2a262a852e0773dc48356ac4577528 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/charts/ChartGroupType.java +++ b/src/main/java/de/deadlocker8/budgetmaster/charts/ChartGroupType.java @@ -4,17 +4,29 @@ import de.deadlocker8.budgetmaster.utils.LocalizedEnum; public enum ChartGroupType implements LocalizedEnum { - NONE("none"), - MONTH("month"), - YEAR("year"); + NONE("far fa-calendar-times", "none"), + MONTH("far fa-calendar", "month"), + YEAR("far fa-calendar-alt", "year"); + private final String icon; private final String localizationKey; - ChartGroupType(String localizationKey) + ChartGroupType(String icon, String localizationKey) { + this.icon = icon; this.localizationKey = localizationKey; } + public boolean hasFontAwesomeIcon() + { + return icon.startsWith("fa"); + } + + public String getIcon() + { + return icon; + } + @Override public String getLocalizationKey() { diff --git a/src/main/resources/languages/base_de.properties b/src/main/resources/languages/base_de.properties index da24580db6dd439590756e17c0b64246a1aafc33..ee2ad2d12a1ef6b5ad479c1a6a331ac3fbe41b16 100644 --- a/src/main/resources/languages/base_de.properties +++ b/src/main/resources/languages/base_de.properties @@ -570,3 +570,7 @@ chart.display.type.pie=Torte chart.display.type.bar=Balken chart.display.type.line=Linien chart.display.type.custom=Benutzerdefiniert + +chart.group.type.none=keine +chart.group.type.month=Monat +chart.group.type.year=Jahr diff --git a/src/main/resources/languages/base_en.properties b/src/main/resources/languages/base_en.properties index 5651efba62aab2d0fbedaac53579688bbd7dbb3f..f1be92b2c952c70ccc02b214435cb4d5edb7f927 100644 --- a/src/main/resources/languages/base_en.properties +++ b/src/main/resources/languages/base_en.properties @@ -569,3 +569,7 @@ chart.display.type.pie=Pie chart.display.type.bar=Bar chart.display.type.line=Line chart.display.type.custom=Custom + +chart.group.type.none=None +chart.group.type.month=Month +chart.group.type.year=Year diff --git a/src/main/resources/templates/charts/charts.ftl b/src/main/resources/templates/charts/charts.ftl index 1dfeca7ca0b163944618fa64f900702e9e8a5be3..31b18b9d2f0b224f998dc513509c13cd4367dda7 100644 --- a/src/main/resources/templates/charts/charts.ftl +++ b/src/main/resources/templates/charts/charts.ftl @@ -33,7 +33,17 @@ <div class="row hide-on-small-and-down"> <div class="col s12 center-align"> <#list displayTypes as displayType> - <@chartDisplayTypeButton displayType/> + <@chartTypeButton displayType/> + </#list> + </div> + </div> + </div> + + <div class="container"> + <div class="row hide-on-small-and-down"> + <div class="col s12 center-align"> + <#list groupTypes as groupType> + <@chartTypeButton groupType/> </#list> </div> </div> @@ -312,12 +322,12 @@ </@stepCollapsible> </#macro> -<#macro chartDisplayTypeButton displayType> +<#macro chartTypeButton item> <a class="waves-effect waves-light btn-large background-grey text-black"> - <#if displayType.hasFontAwesomeIcon()> - <i class="${displayType.getIcon()} left"></i> ${locale.getString(displayType.getLocalizationKey())} + <#if item.hasFontAwesomeIcon()> + <i class="${item.getIcon()} left"></i> ${locale.getString(item.getLocalizationKey())} <#else> - <i class="material-icons left">${displayType.getIcon()}</i> ${locale.getString(displayType.getLocalizationKey())} + <i class="material-icons left">${item.getIcon()}</i> ${locale.getString(item.getLocalizationKey())} </#if> </a> </#macro>