Skip to content
Snippets Groups Projects
Commit e908d9dd authored by uhensler's avatar uhensler
Browse files

OO-4804: Apply user status to filters

parent d12e738d
No related branches found
No related tags found
No related merge requests found
......@@ -25,6 +25,7 @@
*/
package org.olat.core.gui.components.form.flexible.elements;
import java.util.Collection;
import java.util.List;
import java.util.Set;
......@@ -36,9 +37,9 @@ import org.olat.core.gui.components.form.flexible.impl.elements.table.ExtendedFl
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiColumnModel;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableComponent;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableComponentDelegate;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableCssDelegate;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableRendererType;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTreeTableNode;
import org.olat.core.gui.components.form.flexible.impl.elements.table.FlexiTableCssDelegate;
import org.olat.core.gui.components.velocity.VelocityContainer;
import org.olat.core.gui.control.generic.ajax.autocompletion.ListProvider;
import org.olat.core.util.UserSession;
......@@ -282,6 +283,8 @@ public interface FlexiTableElement extends FormItem, FormItemCollection {
*/
public void setSelectedFilterKey(String key);
public void setSelectedFilterKeys(Collection<String> keys);
/**
* Make sure that the option multi-selection is enabled if you specify several filters.
*
......
......@@ -430,6 +430,16 @@ public class FlexiTableElementImpl extends FormItemImpl implements FlexiTableEle
}
}
}
@Override
public void setSelectedFilterKeys(Collection<String> keys) {
if(filters != null) {
for(FlexiTableFilter filter:filters) {
boolean selected = keys.contains(filter.getFilter());
filter.setSelected(selected);
}
}
}
@Override
public void setSelectedFilters(List<FlexiTableFilter> selectedFilters) {
......
......@@ -20,10 +20,12 @@
package org.olat.user.ui.admin;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import org.olat.admin.user.UserAdminController;
import org.olat.admin.user.UsermanagerUserSearchController;
......@@ -263,8 +265,13 @@ public class UserSearchTableController extends FormBasicController implements Ac
selectedFilters.add(loginDeniedFilter);
tableEl.setSelectedFilters(selectedFilters);
}
public void loadModel(SearchIdentityParams params) {
if (params.getExactStatusList() != null && !params.getExactStatusList().isEmpty()) {
Collection<String> keys = params.getExactStatusList().stream().map(i -> Integer.toString(i)).collect(Collectors.toSet());
tableEl.setSelectedFilterKeys(keys);
params.setExactStatusList(null);
}
currentSearchParams = params;
UserSearchDataSource dataSource = new UserSearchDataSource(params, userPropertyHandlers, getLocale());
tableModel.setSource(dataSource);
......
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