Skip to content
Snippets Groups Projects
Commit 151eddf8 authored by srosse's avatar srosse
Browse files

OO-3029: don't close the panel if the user cancelled the closing of the entry,...

OO-3029: don't close the panel if the user cancelled the closing of the entry, enhance behavior of the multi filter with "show all"
parent b41a596b
No related branches found
No related tags found
No related merge requests found
...@@ -1082,10 +1082,28 @@ public class FlexiTableElementImpl extends FormItemImpl implements FlexiTableEle ...@@ -1082,10 +1082,28 @@ public class FlexiTableElementImpl extends FormItemImpl implements FlexiTableEle
filter.setSelected(false); filter.setSelected(false);
} }
} else if(multiFilterSelection) { } else if(multiFilterSelection) {
boolean showAll = false;
for(FlexiTableFilter filter:filters) { for(FlexiTableFilter filter:filters) {
if(filter.getFilter().equals(filterKey)) { if(filter.getFilter().equals(filterKey) && filter.isShowAll()) {
filter.setSelected(!filter.isSelected()); showAll = !filter.isSelected();//Show all is currently not selected, but the event will toggle it
} }
}
if(showAll) {
for(FlexiTableFilter filter:filters) {
filter.setSelected(filter.isShowAll());
}
} else {
for(FlexiTableFilter filter:filters) {
if(filter.isShowAll()) {
filter.setSelected(false);
} else if(filter.getFilter().equals(filterKey)) {
filter.setSelected(!filter.isSelected());
}
}
}
for(FlexiTableFilter filter:filters) {
if(filter.isSelected()) { if(filter.isSelected()) {
selectedFilters.add(filter); selectedFilters.add(filter);
} }
......
...@@ -311,9 +311,11 @@ public class SharedPagesController extends FormBasicController implements Activa ...@@ -311,9 +311,11 @@ public class SharedPagesController extends FormBasicController implements Activa
@Override @Override
protected void event(UserRequest ureq, Controller source, Event event) { protected void event(UserRequest ureq, Controller source, Event event) {
if(pageCtrl == source) { if(pageCtrl == source) {
if(event instanceof ClosePageEvent || event instanceof DonePageEvent) { if(event instanceof ClosePageEvent) {
loadModel(false, false); loadModel(false, false);
stackPanel.popController(pageCtrl); stackPanel.popController(pageCtrl);
} else if(event instanceof DonePageEvent) {
loadModel(false, false);
} }
} }
super.event(ureq, source, event); super.event(ureq, source, event);
......
...@@ -68,7 +68,9 @@ public class SharedPagesDataModel extends DefaultFlexiTableDataModel<SharedPageR ...@@ -68,7 +68,9 @@ public class SharedPagesDataModel extends DefaultFlexiTableDataModel<SharedPageR
@Override @Override
public void filter(List<FlexiTableFilter> filters) { public void filter(List<FlexiTableFilter> filters) {
String key = filters == null || filters.isEmpty() || filters.get(0) == null ? null : filters.get(0).getFilter(); String key = filters == null || filters.isEmpty() || filters.get(0) == null ? null : filters.get(0).getFilter();
if(StringHelper.containsNonWhitespace(key)) { if("all".equals(key)) {
super.setObjects(backups);
} else if(StringHelper.containsNonWhitespace(key)) {
List<String> allowedStatus = filters.stream() List<String> allowedStatus = filters.stream()
.map(f -> f.getFilter()).collect(Collectors.toList()); .map(f -> f.getFilter()).collect(Collectors.toList());
List<SharedPageRow> filteredRows = backups.stream() List<SharedPageRow> filteredRows = backups.stream()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment