19declare(strict_types=1);
45 self::VIEW_SELECTED_ITEMS => [
50 self::VIEW_MY_MEMBERSHIPS => [
56 self::VIEW_MY_STUDYPROGRAMME => []
60 self::VIEW_SELECTED_ITEMS => [
64 self::VIEW_MY_MEMBERSHIPS => [
68 self::VIEW_MY_STUDYPROGRAMME => []
80 int $view = self::VIEW_SELECTED_ITEMS,
89 $this->currentView = $view;
155 return self::$availableSortOptionsByView[$view];
160 return self::$availablePresentationsByView[$view];
206 if (!in_array(
$type, $active,
true)) {
214 $this->
settings->set(
'selected_items_def_sort', $type);
218 $this->
settings->set(
'my_memberships_def_sort', $type);
222 $this->
settings->set(
'pd_active_sort_view_' . $view, serialize($active));
227 $val = $this->
settings->get(
'pd_active_sort_view_' . $view,
'');
228 return ($val ===
'') ? [] : unserialize($val);
233 if (!in_array($default, $active,
true)) {
234 $active[] = $default;
236 $this->
settings->set(
'pd_def_pres_view_' . $view, $default);
237 $this->
settings->set(
'pd_active_pres_view_' . $view, serialize($active));
242 return $this->
settings->get(
'pd_def_pres_view_' . $view,
'list');
247 $val = $this->
settings->get(
'pd_active_pres_view_' . $view,
'');
248 return ($val ===
'') ? [] : unserialize($val);
253 return $this->
settings->get(
'disable_my_memberships',
'0') ===
'0';
258 return $this->
settings->get(
'disable_my_offers',
'0') ===
'0';
263 $this->
settings->set(
'disable_my_memberships', $status ?
'0' :
'1');
268 $this->
settings->set(
'disable_my_offers', $status ?
'0' :
'1');
288 $this->
settings->set(
'personal_items_default_view', (
string) $view);
301 $mode = $this->actor->getPref(
'pd_view_pres_' . $this->currentView);
312 $mode = $this->actor->getPref(
'pd_order_items_' . $this->currentView);
326 return array_intersect(
337 if (!$this->
access->canChangePresentation($this->actor->getId())) {
340 return array_intersect(
349 $this->actor->writePref(
350 'pd_view_pres_' . $this->currentView,
359 $this->actor->writePref(
360 'pd_order_items_' . $this->currentView,
383 return in_array($view, $this->validViews,
true);
isStudyProgrammeViewActive()
storeActorPresentationMode(string $presentationMode)
storeViewSorting(int $view, string $type, array $active)
getActiveSortingsByView(int $view)
getDefaultPresentationByView(int $view)
getTilePresentationMode()
enableMemberships(bool $status)
storeDefaultView(int $view)
static array $availableViews
getDefaultSortingByView(int $view)
getEffectiveSortingMode()
string $currentSortOption
enableSelectedItems(bool $status)
getEffectivePresentationMode()
static array $availableSortOptionsByView
getActivePresentationsByView(int $view)
isSelectedItemsViewActive()
string $currentPresentationOption
getListPresentationMode()
__construct(ilObjUser $actor, int $view=self::VIEW_SELECTED_ITEMS, Setting $settings=null, DashboardAccess $access=null)
static array $availablePresentationsByView
getSelectableSortingModes()
storeViewPresentation(int $view, string $default, array $active)
storeActorSortingMode(string $sortingMode)
isMembershipsViewActive()
static array $availableSortOptions
getAvailableSortOptionsByView(int $view)
getAvailablePresentationsByView(int $view)
getSelectablePresentationModes()
static array $availablePresentations
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
const VIEW_MY_STUDYPROGRAMME
const VIEW_SELECTED_ITEMS
const VIEW_MY_MEMBERSHIPS