From ea8af5f5def62b48f5bf99bdd461d3308b25c48d Mon Sep 17 00:00:00 2001 From: srosse <none@none> Date: Tue, 3 Jan 2017 08:54:42 +0100 Subject: [PATCH] OO-2397: add show all in some filters list --- .../flexible/elements/FlexiTableFilter.java | 17 +++++++++++++++++ .../table/AbstractFlexiTableRenderer.java | 2 +- .../IdentityAssessmentOverviewController.java | 4 ++-- .../tool/IdentityListCourseNodeController.java | 2 ++ .../tool/IdentityListCourseNodeTableModel.java | 2 ++ .../ui/tool/_i18n/LocalStrings_de.properties | 1 + .../ui/tool/_i18n/LocalStrings_en.properties | 1 + .../ui/list/RepositoryEntryListController.java | 2 +- 8 files changed, 27 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/elements/FlexiTableFilter.java b/src/main/java/org/olat/core/gui/components/form/flexible/elements/FlexiTableFilter.java index 2e8a30a4275..33321c09c66 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/elements/FlexiTableFilter.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/elements/FlexiTableFilter.java @@ -35,6 +35,7 @@ public class FlexiTableFilter { private final FlexiTableFilterIconRenderer renderer; private boolean selected; + private boolean showAll = false; public FlexiTableFilter(String label, String filter) { this.label = label; @@ -43,6 +44,14 @@ public class FlexiTableFilter { this.iconLeftCSS = null; } + public FlexiTableFilter(String label, String filter, boolean showAll) { + this.label = label; + this.filter = filter; + this.showAll = showAll; + this.renderer = null; + this.iconLeftCSS = null; + } + public FlexiTableFilter(String label, String filter, String iconLeftCSS) { this.label = label; this.filter = filter; @@ -65,6 +74,14 @@ public class FlexiTableFilter { return filter; } + public boolean isShowAll() { + return showAll; + } + + public void setShowAll(boolean showAll) { + this.showAll = showAll; + } + public String getIconLeftCSS() { return iconLeftCSS; } diff --git a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/AbstractFlexiTableRenderer.java b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/AbstractFlexiTableRenderer.java index 9eadba7b8d4..138f7f3e12f 100644 --- a/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/AbstractFlexiTableRenderer.java +++ b/src/main/java/org/olat/core/gui/components/form/flexible/impl/elements/table/AbstractFlexiTableRenderer.java @@ -271,7 +271,7 @@ public abstract class AbstractFlexiTableRenderer extends DefaultComponentRendere filter.getIconRenderer().render(sb, filter, ftE.getComponent(), ftE.getTranslator()); } sb.append(filter.getLabel()).append("</a></li>"); - if(filter.isSelected()) { + if(filter.isSelected() && !filter.isShowAll()) { selected = filter.getLabel(); } } diff --git a/src/main/java/org/olat/course/assessment/ui/tool/IdentityAssessmentOverviewController.java b/src/main/java/org/olat/course/assessment/ui/tool/IdentityAssessmentOverviewController.java index 78af81dae1f..98791c5071e 100644 --- a/src/main/java/org/olat/course/assessment/ui/tool/IdentityAssessmentOverviewController.java +++ b/src/main/java/org/olat/course/assessment/ui/tool/IdentityAssessmentOverviewController.java @@ -246,8 +246,8 @@ public class IdentityAssessmentOverviewController extends FormBasicController im if (allowTableFiltering) { List<FlexiTableFilter> filters = new ArrayList<>(); - //filters.add(new FlexiTableFilter(translate("nodesoverview.filter.discardEmptyNodes"), "discardEmptyNodes")); - //filters.add(new FlexiTableFilter(translate("nodesoverview.filter.showEmptyNodes"), "showEmptyNodes")); + filters.add(new FlexiTableFilter(translate("filter.showAll"), "showAll", true)); + filters.add(FlexiTableFilter.SPACER); filters.add(new FlexiTableFilter(translate("filter.passed"), "passed")); filters.add(new FlexiTableFilter(translate("filter.failed"), "failed")); filters.add(new FlexiTableFilter(translate("filter.inProgress"), "inProgress")); diff --git a/src/main/java/org/olat/course/assessment/ui/tool/IdentityListCourseNodeController.java b/src/main/java/org/olat/course/assessment/ui/tool/IdentityListCourseNodeController.java index e46af6ad686..05b943d9d08 100644 --- a/src/main/java/org/olat/course/assessment/ui/tool/IdentityListCourseNodeController.java +++ b/src/main/java/org/olat/course/assessment/ui/tool/IdentityListCourseNodeController.java @@ -247,6 +247,8 @@ public class IdentityListCourseNodeController extends FormBasicController implem tableEl.setMultiSelect(!coachCourseEnv.isCourseReadOnly()); List<FlexiTableFilter> filters = new ArrayList<>(); + filters.add(new FlexiTableFilter(translate("filter.showAll"), "showAll", true)); + filters.add(FlexiTableFilter.SPACER); filters.add(new FlexiTableFilter(translate("filter.passed"), "passed")); filters.add(new FlexiTableFilter(translate("filter.failed"), "failed")); filters.add(new FlexiTableFilter(translate("filter.inProgress"), "inProgress")); diff --git a/src/main/java/org/olat/course/assessment/ui/tool/IdentityListCourseNodeTableModel.java b/src/main/java/org/olat/course/assessment/ui/tool/IdentityListCourseNodeTableModel.java index 30abb47649d..fd99968c973 100644 --- a/src/main/java/org/olat/course/assessment/ui/tool/IdentityListCourseNodeTableModel.java +++ b/src/main/java/org/olat/course/assessment/ui/tool/IdentityListCourseNodeTableModel.java @@ -83,6 +83,8 @@ public class IdentityListCourseNodeTableModel extends DefaultFlexiTableDataModel filteredRows.add(row); } } + } else { + filteredRows.addAll(backups); } super.setObjects(filteredRows); } else { diff --git a/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_de.properties b/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_de.properties index 14f58330ada..5c45c27e78f 100644 --- a/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_de.properties +++ b/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_de.properties @@ -29,6 +29,7 @@ filter.groups=$org.olat.modules.assessment.ui\:filter.groups filter.inProgress=$org.olat.modules.assessment.ui\:filter.inProgress filter.inReview=$org.olat.modules.assessment.ui\:filter.inReview filter.passed=$org.olat.modules.assessment.ui\:filter.passed +filter.showAll=Alle anzeigen generate.certificate=$org.olat.course.certificate.ui\:generate.certificate groups=Gruppen msg.certificate.pending=$org.olat.course.certificate.ui\:msg.certificate.pending diff --git a/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_en.properties b/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_en.properties index 02c21c6a263..e847512e2aa 100644 --- a/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_en.properties +++ b/src/main/java/org/olat/course/assessment/ui/tool/_i18n/LocalStrings_en.properties @@ -29,6 +29,7 @@ filter.groups=$org.olat.modules.assessment.ui\:filter.groups filter.inProgress=$org.olat.modules.assessment.ui\:filter.inProgress filter.inReview=$org.olat.modules.assessment.ui\:filter.inReview filter.passed=$org.olat.modules.assessment.ui\:filter.passed +filter.showAll=Show all generate.certificate=$org.olat.course.certificate.ui\:generate.certificate groups=Groups msg.certificate.pending=$org.olat.course.certificate.ui\:msg.certificate.pending diff --git a/src/main/java/org/olat/repository/ui/list/RepositoryEntryListController.java b/src/main/java/org/olat/repository/ui/list/RepositoryEntryListController.java index 5ed247e5ba8..183b0f4d726 100644 --- a/src/main/java/org/olat/repository/ui/list/RepositoryEntryListController.java +++ b/src/main/java/org/olat/repository/ui/list/RepositoryEntryListController.java @@ -225,7 +225,7 @@ public class RepositoryEntryListController extends FormBasicController private void initFilters(FlexiTableElement tableElement) { List<FlexiTableFilter> filters = new ArrayList<>(16); - filters.add(new FlexiTableFilter(translate("filter.show.all"), Filter.showAll.name())); + filters.add(new FlexiTableFilter(translate("filter.show.all"), Filter.showAll.name(), true)); filters.add(FlexiTableFilter.SPACER); filters.add(new FlexiTableFilter(translate("filter.current.courses"), Filter.currentCourses.name())); filters.add(new FlexiTableFilter(translate("filter.upcoming.courses"), Filter.upcomingCourses.name())); -- GitLab