diff --git a/src/main/java/org/olat/course/member/CourseBusinessGroupListController.java b/src/main/java/org/olat/course/member/CourseBusinessGroupListController.java index 115c2f63d5484c2dd4233191dc9ce7d98ad9cf38..c5c5287d9b8cbb6d0a7c6519055eecf3985fac0b 100644 --- a/src/main/java/org/olat/course/member/CourseBusinessGroupListController.java +++ b/src/main/java/org/olat/course/member/CourseBusinessGroupListController.java @@ -80,7 +80,7 @@ public class CourseBusinessGroupListController extends AbstractBusinessGroupList private SelectBusinessGroupController selectController; public CourseBusinessGroupListController(UserRequest ureq, WindowControl wControl, RepositoryEntry re) { - super(ureq, wControl, "group_list", false, false, re); + super(ureq, wControl, "group_list", false, false, "course", re); this.re = re; } diff --git a/src/main/java/org/olat/group/ui/main/AbstractBusinessGroupListController.java b/src/main/java/org/olat/group/ui/main/AbstractBusinessGroupListController.java index 1ab9d88a5fb0bd5e06fda6d00a122159dab07f40..a2ecb8e17753440c3d211477d6aef9c7689ee38a 100644 --- a/src/main/java/org/olat/group/ui/main/AbstractBusinessGroupListController.java +++ b/src/main/java/org/olat/group/ui/main/AbstractBusinessGroupListController.java @@ -172,13 +172,14 @@ public abstract class AbstractBusinessGroupListController extends FormBasicContr private BusinessGroupViewFilter filter; private Object userObject; + private final String prefsKey; - public AbstractBusinessGroupListController(UserRequest ureq, WindowControl wControl, String page) { - this(ureq, wControl, page, false, false, null); + public AbstractBusinessGroupListController(UserRequest ureq, WindowControl wControl, String page, String prefsKey) { + this(ureq, wControl, page, false, false, prefsKey, null); } public AbstractBusinessGroupListController(UserRequest ureq, WindowControl wControl, String page, - boolean showAdminTools, boolean startExtendedSearch, Object userObject) { + boolean showAdminTools, boolean startExtendedSearch, String prefsKey, Object userObject) { super(ureq, wControl, page); setTranslator(Util.createPackageTranslator(AbstractBusinessGroupListController.class, ureq.getLocale(), getTranslator())); @@ -187,6 +188,7 @@ public abstract class AbstractBusinessGroupListController extends FormBasicContr this.showAdminTools = showAdminTools && admin; this.userObject = userObject; this.startExtendedSearch = startExtendedSearch; + this.prefsKey = prefsKey; initForm(ureq); } @@ -201,6 +203,7 @@ public abstract class AbstractBusinessGroupListController extends FormBasicContr FlexiTableSortOptions options = new FlexiTableSortOptions(); options.setFromColumnModel(true); tableEl.setSortSettings(options); + tableEl.setAndLoadPersistedPreferences(ureq, "gbg-list-" + prefsKey); searchCtrl = new BusinessGroupSearchController(ureq, getWindowControl(), isAdmin(), true, showAdminTools, mainForm); searchCtrl.setEnabled(false); diff --git a/src/main/java/org/olat/group/ui/main/BusinessGroupListController.java b/src/main/java/org/olat/group/ui/main/BusinessGroupListController.java index 8b309696f177d4a841df10b703b1ea745c79a30c..64097229cf8fadc7859fea25834c3b7f517a68ea 100644 --- a/src/main/java/org/olat/group/ui/main/BusinessGroupListController.java +++ b/src/main/java/org/olat/group/ui/main/BusinessGroupListController.java @@ -31,8 +31,8 @@ import org.olat.group.model.SearchBusinessGroupParams; */ public class BusinessGroupListController extends AbstractBusinessGroupListController { - public BusinessGroupListController(UserRequest ureq, WindowControl wControl) { - super(ureq, wControl, "group_list"); + public BusinessGroupListController(UserRequest ureq, WindowControl wControl, String prefsKey) { + super(ureq, wControl, "group_list", prefsKey); } @Override diff --git a/src/main/java/org/olat/group/ui/main/FavoritBusinessGroupListController.java b/src/main/java/org/olat/group/ui/main/FavoritBusinessGroupListController.java index 5a5d117d8756f9775702b195445c622e928e4847..cc61890433281d2d4c156c5a72e419559873ded0 100644 --- a/src/main/java/org/olat/group/ui/main/FavoritBusinessGroupListController.java +++ b/src/main/java/org/olat/group/ui/main/FavoritBusinessGroupListController.java @@ -31,8 +31,8 @@ import org.olat.group.model.SearchBusinessGroupParams; */ public class FavoritBusinessGroupListController extends AbstractBusinessGroupListController { - public FavoritBusinessGroupListController(UserRequest ureq, WindowControl wControl) { - super(ureq, wControl, "group_list"); + public FavoritBusinessGroupListController(UserRequest ureq, WindowControl wControl, String prefsKey) { + super(ureq, wControl, "group_list", prefsKey); } @Override diff --git a/src/main/java/org/olat/group/ui/main/OpenBusinessGroupListController.java b/src/main/java/org/olat/group/ui/main/OpenBusinessGroupListController.java index c8022d803cac9cba967280bb0ff2e4a3eae74419..0bc11b54d49f58b4d37cc498b8d7f33ab442491a 100644 --- a/src/main/java/org/olat/group/ui/main/OpenBusinessGroupListController.java +++ b/src/main/java/org/olat/group/ui/main/OpenBusinessGroupListController.java @@ -41,8 +41,8 @@ import org.olat.group.ui.main.BusinessGroupFlexiTableModel.Cols; */ public class OpenBusinessGroupListController extends AbstractBusinessGroupListController { - public OpenBusinessGroupListController(UserRequest ureq, WindowControl wControl) { - super(ureq, wControl, "group_list"); + public OpenBusinessGroupListController(UserRequest ureq, WindowControl wControl, String prefsKey) { + super(ureq, wControl, "group_list", prefsKey); } @Override diff --git a/src/main/java/org/olat/group/ui/main/OverviewBusinessGroupListController.java b/src/main/java/org/olat/group/ui/main/OverviewBusinessGroupListController.java index 22e000c0e337d9fe6d394cf9a3ef1e734d4a5c86..425fc9cc9338f23708d468604d18b9349f9103cf 100644 --- a/src/main/java/org/olat/group/ui/main/OverviewBusinessGroupListController.java +++ b/src/main/java/org/olat/group/ui/main/OverviewBusinessGroupListController.java @@ -168,7 +168,7 @@ public class OverviewBusinessGroupListController extends BasicController impleme OLATResourceable ores = OresHelper.createOLATResourceableInstance("Favorits", 0l); ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores)); WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl()); - favoritGroupsCtrl = new FavoritBusinessGroupListController(ureq, bwControl); + favoritGroupsCtrl = new FavoritBusinessGroupListController(ureq, bwControl, "favorit"); listenTo(favoritGroupsCtrl); favoritGroupsCtrl.doDefaultSearch(); @@ -183,7 +183,7 @@ public class OverviewBusinessGroupListController extends BasicController impleme OLATResourceable ores = OresHelper.createOLATResourceableInstance("AllGroups", 0l); ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores)); WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl()); - myGroupsCtrl = new BusinessGroupListController(ureq, bwControl); + myGroupsCtrl = new BusinessGroupListController(ureq, bwControl, "my"); listenTo(myGroupsCtrl); myGroupsCtrl.doDefaultSearch(); @@ -198,7 +198,7 @@ public class OverviewBusinessGroupListController extends BasicController impleme OLATResourceable ores = OresHelper.createOLATResourceableInstance("OwnedGroups", 0l); ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores)); WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl()); - openGroupsCtrl = new OpenBusinessGroupListController(ureq, bwControl); + openGroupsCtrl = new OpenBusinessGroupListController(ureq, bwControl, "public"); listenTo(openGroupsCtrl); openGroupsCtrl.doDefaultSearch(); @@ -213,7 +213,7 @@ public class OverviewBusinessGroupListController extends BasicController impleme OLATResourceable ores = OresHelper.createOLATResourceableInstance("Search", 0l); ThreadLocalUserActivityLogger.addLoggingResourceInfo(LoggingResourceable.wrapBusinessPath(ores)); WindowControl bwControl = BusinessControlFactory.getInstance().createBusinessWindowControl(ores, null, getWindowControl()); - searchGroupsCtrl = new SearchBusinessGroupListController(ureq, bwControl); + searchGroupsCtrl = new SearchBusinessGroupListController(ureq, bwControl, "search"); listenTo(searchGroupsCtrl); mainVC.put("groupList", searchGroupsCtrl.getInitialComponent()); diff --git a/src/main/java/org/olat/group/ui/main/SearchBusinessGroupListController.java b/src/main/java/org/olat/group/ui/main/SearchBusinessGroupListController.java index dd9c02504508d3ff4e1e07d4a04cfd678fd20884..406799369932bcac1a11af3ccab65a16f9fd9ff4 100644 --- a/src/main/java/org/olat/group/ui/main/SearchBusinessGroupListController.java +++ b/src/main/java/org/olat/group/ui/main/SearchBusinessGroupListController.java @@ -31,8 +31,8 @@ import org.olat.group.model.SearchBusinessGroupParams; */ public class SearchBusinessGroupListController extends AbstractBusinessGroupListController { - public SearchBusinessGroupListController(UserRequest ureq, WindowControl wControl) { - super(ureq, wControl, "group_list", true, true, null); + public SearchBusinessGroupListController(UserRequest ureq, WindowControl wControl, String prefsKey) { + super(ureq, wControl, "group_list", true, true, prefsKey, null); } @Override diff --git a/src/main/java/org/olat/group/ui/main/SelectBusinessGroupCourseAuthorController.java b/src/main/java/org/olat/group/ui/main/SelectBusinessGroupCourseAuthorController.java index abc58fc36f65e5d00a9ceadc830a06b69a09452c..4210eddf4d434b450c0b47a64ef5bc6bd7e129ea 100644 --- a/src/main/java/org/olat/group/ui/main/SelectBusinessGroupCourseAuthorController.java +++ b/src/main/java/org/olat/group/ui/main/SelectBusinessGroupCourseAuthorController.java @@ -35,7 +35,7 @@ import org.olat.group.model.SearchBusinessGroupParams; public class SelectBusinessGroupCourseAuthorController extends AbstractBusinessGroupListController { public SelectBusinessGroupCourseAuthorController(UserRequest ureq, WindowControl wControl) { - super(ureq, wControl, "group_list"); + super(ureq, wControl, "group_list", "authors"); } @Override diff --git a/src/main/java/org/olat/group/ui/main/SelectFavoritBusinessGroupController.java b/src/main/java/org/olat/group/ui/main/SelectFavoritBusinessGroupController.java index 4a50502df25cafce31131d6c5d47963deddf6bf5..2bc1e0de90f24e103fa31703b87822ca043f0d22 100644 --- a/src/main/java/org/olat/group/ui/main/SelectFavoritBusinessGroupController.java +++ b/src/main/java/org/olat/group/ui/main/SelectFavoritBusinessGroupController.java @@ -32,7 +32,7 @@ import org.olat.group.model.SearchBusinessGroupParams; public class SelectFavoritBusinessGroupController extends AbstractBusinessGroupListController { public SelectFavoritBusinessGroupController(UserRequest ureq, WindowControl wControl) { - super(ureq, wControl, "group_list"); + super(ureq, wControl, "group_list", "sel-favorit"); } diff --git a/src/main/java/org/olat/group/ui/main/SelectOwnedBusinessGroupController.java b/src/main/java/org/olat/group/ui/main/SelectOwnedBusinessGroupController.java index 070d94955135dc919271768884c7e99bad54086e..ae67a4766256d2791d5569ef8aebdf5b03ecdf95 100644 --- a/src/main/java/org/olat/group/ui/main/SelectOwnedBusinessGroupController.java +++ b/src/main/java/org/olat/group/ui/main/SelectOwnedBusinessGroupController.java @@ -32,7 +32,7 @@ import org.olat.group.model.SearchBusinessGroupParams; public class SelectOwnedBusinessGroupController extends AbstractBusinessGroupListController { public SelectOwnedBusinessGroupController(UserRequest ureq, WindowControl wControl) { - super(ureq, wControl, "select_group_list"); + super(ureq, wControl, "select_group_list", "sel-owned"); } @Override diff --git a/src/main/java/org/olat/group/ui/main/SelectSearchBusinessGroupController.java b/src/main/java/org/olat/group/ui/main/SelectSearchBusinessGroupController.java index 68f683bad2ff167b205198a8a14772d41aa4b746..6d882b634172bc785e566ebfc88d439f13eaf6d0 100644 --- a/src/main/java/org/olat/group/ui/main/SelectSearchBusinessGroupController.java +++ b/src/main/java/org/olat/group/ui/main/SelectSearchBusinessGroupController.java @@ -34,7 +34,7 @@ public class SelectSearchBusinessGroupController extends AbstractBusinessGroupLi private final boolean restricted; public SelectSearchBusinessGroupController(UserRequest ureq, WindowControl wControl, boolean restricted) { - super(ureq, wControl, "group_list"); + super(ureq, wControl, "group_list", "sel-search"); this.restricted = restricted; } diff --git a/src/main/java/org/olat/modules/qpool/ui/AbstractItemListController.java b/src/main/java/org/olat/modules/qpool/ui/AbstractItemListController.java index 95951773d4daf5a5bf276603d840a359c8c483cf..bd3c094657341f540c97352087d5792c2787bbec 100644 --- a/src/main/java/org/olat/modules/qpool/ui/AbstractItemListController.java +++ b/src/main/java/org/olat/modules/qpool/ui/AbstractItemListController.java @@ -75,6 +75,7 @@ public abstract class AbstractItemListController extends FormBasicController private FlexiTableElement itemsTable; private QuestionItemDataModel model; + private final String prefsKey; private ExtendedSearchController extendedSearchCtrl; private final MarkManager markManager; @@ -86,6 +87,7 @@ public abstract class AbstractItemListController extends FormBasicController public AbstractItemListController(UserRequest ureq, WindowControl wControl, QuestionItemsSource source, String key) { super(ureq, wControl, "item_list"); + this.prefsKey = key; this.itemsSource = source; markManager = CoreSpringFactory.getImpl(MarkManager.class); qpoolService = CoreSpringFactory.getImpl(QPoolService.class); @@ -146,6 +148,7 @@ public abstract class AbstractItemListController extends FormBasicController itemsTable.setSortSettings(new FlexiTableSortOptions(true)); itemsTable.setExtendedSearch(extendedSearchCtrl); itemsTable.setColumnIndexForDragAndDropLabel(Cols.title.ordinal()); + itemsTable.setAndLoadPersistedPreferences(ureq, "qpool-list-" + prefsKey); initButtons(ureq, formLayout); }