Skip to content

Commit

Permalink
filter by search mode fix for saved searches
Browse files Browse the repository at this point in the history
  • Loading branch information
Kateryna Honchar committed May 26, 2022
1 parent fe80a7a commit 6009b3d
Showing 1 changed file with 14 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -278,15 +278,22 @@ public void onClick(AjaxRequestTarget target) {
saveSearchButton.setOutputMarkupId(true);
saveSearchContainer.add(saveSearchButton);

List<InlineMenuItem> savedSearchList = getSavedSearchList();
LoadableModel<List<InlineMenuItem>> savedSearchListModel = new LoadableModel<List<InlineMenuItem>>() {
private static final long serialVersionUID = 1L;

@Override
protected List<InlineMenuItem> load() {
return getSavedSearchList();
}
};

WebMarkupContainer savedSearchMenu = new WebMarkupContainer(ID_SAVED_SEARCH_MENU);
savedSearchMenu.add(new VisibleBehaviour(() -> CollectionUtils.isNotEmpty(savedSearchList)));
savedSearchMenu.add(new VisibleBehaviour(() -> CollectionUtils.isNotEmpty(savedSearchListModel.getObject())));
savedSearchMenu.add(AttributeAppender.append("title",
getPageBase().createStringResource("SearchPanel.savedFiltersListButton.title")));
saveSearchContainer.add(savedSearchMenu);

ListView<InlineMenuItem> savedSearchItems = new ListView<InlineMenuItem>(ID_SAVED_SEARCH_ITEMS, savedSearchList) {
ListView<InlineMenuItem> savedSearchItems = new ListView<InlineMenuItem>(ID_SAVED_SEARCH_ITEMS, savedSearchListModel) {

private static final long serialVersionUID = 1L;

Expand Down Expand Up @@ -501,8 +508,11 @@ private List<InlineMenuItem> getSavedSearchList() {
availableFilterList = view != null ? getAvailableFilterList(view.getSearchBoxConfiguration()) : null;
}
if (availableFilterList != null) {
availableFilterList.stream().filter(filter -> getModelObject().getSearchMode().equals(filter.getSearchMode()))
availableFilterList
.forEach(filter -> {
if (!getModelObject().getSearchMode().equals(filter.getSearchMode())) {
return;
}
PolyStringType filterLabel = filter.getDisplay() != null ? filter.getDisplay().getLabel() : null;
InlineMenuItem searchItem = new InlineMenuItem(Model.of(WebComponentUtil.getTranslatedPolyString(filterLabel))) {
private static final long serialVersionUID = 1L;
Expand Down

0 comments on commit 6009b3d

Please sign in to comment.