ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
ilPDSelectedItemsBlockViewSettings Class Reference
+ Inheritance diagram for ilPDSelectedItemsBlockViewSettings:
+ Collaboration diagram for ilPDSelectedItemsBlockViewSettings:

Public Member Functions

 __construct (ilObjUser $actor, int $view=self::VIEW_SELECTED_ITEMS, ?Setting $settings=null, ?DashboardAccess $access=null)
 
 getMembershipsView ()
 
 getSelectedItemsView ()
 
 getStudyProgrammeView ()
 
 getLearningSequenceView ()
 
 getRecommendedContentView ()
 
 getListPresentationMode ()
 
 getTilePresentationMode ()
 
 isMembershipsViewActive ()
 
 isRecommendedContentViewActive ()
 
 isSelectedItemsViewActive ()
 
 isStudyProgrammeViewActive ()
 
 isLearningSequenceViewActive ()
 
 getSortByStartDateMode ()
 
 getSortByLocationMode ()
 
 getSortByTypeMode ()
 
 getSortByAlphabetMode ()
 
 getAvailableSortOptionsByView (int $view)
 
 getDefaultSortingByView (int $view)
 
 getPresentationViews ()
 
 getAvailablePresentationsByView (int $view)
 
 storeViewSorting (int $view, string $type, array $active)
 
 storeViewSortingOptions (int $view, array $options)
 
 getActiveSortingsByView (int $view)
 
 storeViewPresentation (int $view, string $default, array $active)
 
 getDefaultPresentationByView (int $view)
 
 getActivePresentationsByView (int $view)
 
 setViewPositions (array $positions)
 
 getViewPositions ()
 
 isViewEnabled (int $view)
 
 enableView (int $view, bool $status)
 
 enabledMemberships ()
 
 enabledSelectedItems ()
 
 enableMemberships (bool $status)
 
 enableSelectedItems (bool $status)
 
 allViewsEnabled ()
 
 getDefaultView ()
 
 storeDefaultView (int $view)
 
 parse ()
 
 getEffectivePresentationMode ()
 
 getEffectiveSortingMode ()
 
 getSelectableSortingModes ()
 
 getSelectablePresentationModes ()
 
 storeActorPresentationMode (string $presentationMode)
 
 storeActorSortingMode (string $sortingMode)
 
 getActor ()
 
 getCurrentView ()
 
 getCurrentSortOption ()
 
 isValidView (int $view)
 
 getDefaultSorting ()
 
 isSortedByType ()
 
 isSortedByAlphabet ()
 
 isSortedByLocation ()
 
 isSortedByStartDate ()
 
 isTilePresentation ()
 
 isListPresentation ()
 
 enabledRecommendedContent ()
 
 enabledLearningSequences ()
 
 enabledStudyProgrammes ()
 
 enableLearningSequences (bool $status)
 
 enableStudyProgrammes (bool $status)
 
 getViewName (int $view)
 
 getEffectiveSortingData ()
 
 getEffectiveSortingOptions ()
 
 storeActorSortingData (array $data)
 
 getAvailableOptionsBySortation (string $sortation)
 
 getSortingOptionsByView (int $view)
 

Protected Member Functions

 allViewsDisabled ()
 

Protected Attributes

Setting $settings
 
ilObjUser $actor
 
array $validViews = []
 
int $currentView = self::VIEW_SELECTED_ITEMS
 
string $currentSortOption = self::SORT_BY_LOCATION
 
string $currentPresentationOption = self::PRESENTATION_LIST
 
DashboardAccess $access
 

Static Protected Attributes

static array $availableViews
 
static array $viewNames
 
static array $availablePresentations
 
static array $availableSortOptions
 
static array $availableSortOptionsByView
 
static array $availablePresentationsByView
 

Static Private Attributes

static array $has_data = [self::SORT_MANUALLY]
 
static array $has_options = [self::SORT_MANUALLY]
 
static array $options_by_sortation
 

Additional Inherited Members

- Data Fields inherited from ilPDSelectedItemsBlockConstants
const VIEW_SELECTED_ITEMS = 0
 
const VIEW_RECOMMENDED_CONTENT = 1
 
const VIEW_MY_MEMBERSHIPS = 2
 
const VIEW_LEARNING_SEQUENCES = 3
 
const VIEW_MY_STUDYPROGRAMME = 4
 
const SORT_BY_TYPE = 'type'
 
const SORT_BY_LOCATION = 'location'
 
const SORT_BY_START_DATE = 'start_date'
 
const SORT_BY_ALPHABET = 'alphabet'
 
const SORT_MANUALLY = 'manually'
 
const PRESENTATION_LIST = 'list'
 
const PRESENTATION_TILE = 'tile'
 

Detailed Description

Definition at line 24 of file class.ilPDSelectedItemsBlockViewSettings.php.

Constructor & Destructor Documentation

◆ __construct()

ilPDSelectedItemsBlockViewSettings::__construct ( ilObjUser  $actor,
int  $view = self::VIEW_SELECTED_ITEMS,
?Setting  $settings = null,
?DashboardAccess  $access = null 
)

Member Function Documentation

◆ allViewsDisabled()

ilPDSelectedItemsBlockViewSettings::allViewsDisabled ( )
protected

◆ allViewsEnabled()

ilPDSelectedItemsBlockViewSettings::allViewsEnabled ( )

Definition at line 397 of file class.ilPDSelectedItemsBlockViewSettings.php.

397 : bool
398 {
399 return $this->enabledMemberships() && $this->enabledSelectedItems();
400 }

References enabledMemberships(), and enabledSelectedItems().

+ Here is the call graph for this function:

◆ enabledLearningSequences()

ilPDSelectedItemsBlockViewSettings::enabledLearningSequences ( )

Definition at line 552 of file class.ilPDSelectedItemsBlockViewSettings.php.

552 : bool
553 {
554 return (int) $this->settings->get('disable_learning_sequences', '1') === 0;
555 }

References ILIAS\Repository\settings().

Referenced by isViewEnabled().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enabledMemberships()

ilPDSelectedItemsBlockViewSettings::enabledMemberships ( )

Definition at line 377 of file class.ilPDSelectedItemsBlockViewSettings.php.

377 : bool
378 {
379 return (int) $this->settings->get('disable_my_memberships', '0') === 0;
380 }

References ILIAS\Repository\settings().

Referenced by allViewsDisabled(), allViewsEnabled(), and isViewEnabled().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enabledRecommendedContent()

ilPDSelectedItemsBlockViewSettings::enabledRecommendedContent ( )

Definition at line 547 of file class.ilPDSelectedItemsBlockViewSettings.php.

547 : bool
548 {
549 return true;
550 }

Referenced by isViewEnabled().

+ Here is the caller graph for this function:

◆ enabledSelectedItems()

ilPDSelectedItemsBlockViewSettings::enabledSelectedItems ( )

Definition at line 382 of file class.ilPDSelectedItemsBlockViewSettings.php.

382 : bool
383 {
384 return (int) $this->settings->get('disable_my_offers', '0') === 0;
385 }

References ILIAS\Repository\settings().

Referenced by allViewsDisabled(), allViewsEnabled(), and isViewEnabled().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enabledStudyProgrammes()

ilPDSelectedItemsBlockViewSettings::enabledStudyProgrammes ( )

Definition at line 557 of file class.ilPDSelectedItemsBlockViewSettings.php.

557 : bool
558 {
559 return (int) $this->settings->get('disable_study_programmes', '1') === 0;
560 }

References ILIAS\Repository\settings().

Referenced by isViewEnabled().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enableLearningSequences()

ilPDSelectedItemsBlockViewSettings::enableLearningSequences ( bool  $status)

Definition at line 562 of file class.ilPDSelectedItemsBlockViewSettings.php.

562 : void
563 {
564 $this->settings->set('disable_learning_sequences', $status ? '0' : '1');
565 }

References ILIAS\Repository\settings().

Referenced by enableView().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enableMemberships()

ilPDSelectedItemsBlockViewSettings::enableMemberships ( bool  $status)

Definition at line 387 of file class.ilPDSelectedItemsBlockViewSettings.php.

387 : void
388 {
389 $this->settings->set('disable_my_memberships', $status ? '0' : '1');
390 }

References ILIAS\Repository\settings().

Referenced by enableView(), and DashboardViewSettingsTest\testDisableMemberships().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enableSelectedItems()

ilPDSelectedItemsBlockViewSettings::enableSelectedItems ( bool  $status)

Definition at line 392 of file class.ilPDSelectedItemsBlockViewSettings.php.

392 : void
393 {
394 $this->settings->set('disable_my_offers', $status ? '0' : '1');
395 }

References ILIAS\Repository\settings().

Referenced by enableView(), and DashboardViewSettingsTest\testDisableSelectedItems().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enableStudyProgrammes()

ilPDSelectedItemsBlockViewSettings::enableStudyProgrammes ( bool  $status)

Definition at line 567 of file class.ilPDSelectedItemsBlockViewSettings.php.

567 : void
568 {
569 $this->settings->set('disable_study_programmes', $status ? '0' : '1');
570 }

References ILIAS\Repository\settings().

Referenced by enableView().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ enableView()

ilPDSelectedItemsBlockViewSettings::enableView ( int  $view,
bool  $status 
)

Definition at line 355 of file class.ilPDSelectedItemsBlockViewSettings.php.

355 : void
356 {
357 switch ($view) {
358 case $this->getMembershipsView():
359 $this->enableMemberships($status);
360 break;
361 case $this->getSelectedItemsView():
362 $this->enableSelectedItems($status);
363 break;
364 case $this->getStudyProgrammeView():
365 $this->enableStudyProgrammes($status);
366 break;
367 case $this->getRecommendedContentView():
368 break;
369 case $this->getLearningSequenceView():
370 $this->enableLearningSequences($status);
371 break;
372 default:
373 throw new InvalidArgumentException('Unknown view: $view');
374 }
375 }

References enableLearningSequences(), enableMemberships(), enableSelectedItems(), enableStudyProgrammes(), getLearningSequenceView(), getMembershipsView(), getRecommendedContentView(), getSelectedItemsView(), and getStudyProgrammeView().

+ Here is the call graph for this function:

◆ getActivePresentationsByView()

ilPDSelectedItemsBlockViewSettings::getActivePresentationsByView ( int  $view)
Returns
string[]

Definition at line 309 of file class.ilPDSelectedItemsBlockViewSettings.php.

309 : array
310 {
311 $val = $this->settings->get('pd_active_pres_view_' . $view, '');
312
313 return (!$val)
314 ? $this->getAvailablePresentationsByView($view)
315 : unserialize($val, ['allowed_classes' => false]);
316 }

References getAvailablePresentationsByView(), and ILIAS\Repository\settings().

Referenced by getSelectablePresentationModes().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getActiveSortingsByView()

ilPDSelectedItemsBlockViewSettings::getActiveSortingsByView ( int  $view)
Returns
string[]

Definition at line 271 of file class.ilPDSelectedItemsBlockViewSettings.php.

271 : array
272 {
273 $val = $this->settings->get('pd_active_sort_view_' . $view);
274 if ($val === '' || $val === null) {
275 $active_sortings = $this->getAvailableSortOptionsByView($view);
276 } else {
277 $active_sortings = unserialize($val, ['allowed_classes' => false]);
278 }
279 return array_filter(
280 $active_sortings,
281 fn(string $sorting): bool => in_array(
282 $sorting,
283 $this->getAvailableSortOptionsByView($view),
284 true
285 )
286 );
287 }

References getAvailableSortOptionsByView(), and ILIAS\Repository\settings().

Referenced by getSelectableSortingModes().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getActor()

ilPDSelectedItemsBlockViewSettings::getActor ( )

Definition at line 492 of file class.ilPDSelectedItemsBlockViewSettings.php.

492 : ilObjUser
493 {
494 return $this->actor;
495 }
User class.

References $actor.

◆ getAvailableOptionsBySortation()

ilPDSelectedItemsBlockViewSettings::getAvailableOptionsBySortation ( string  $sortation)

Definition at line 602 of file class.ilPDSelectedItemsBlockViewSettings.php.

602 : array
603 {
604 return self::$options_by_sortation[$sortation] ?? [];
605 }

◆ getAvailablePresentationsByView()

ilPDSelectedItemsBlockViewSettings::getAvailablePresentationsByView ( int  $view)
Returns
string[]

Definition at line 240 of file class.ilPDSelectedItemsBlockViewSettings.php.

240 : array
241 {
242 return self::$availablePresentationsByView[$view];
243 }

Referenced by getActivePresentationsByView(), and getSelectablePresentationModes().

+ Here is the caller graph for this function:

◆ getAvailableSortOptionsByView()

ilPDSelectedItemsBlockViewSettings::getAvailableSortOptionsByView ( int  $view)

Definition at line 215 of file class.ilPDSelectedItemsBlockViewSettings.php.

215 : array
216 {
217 return self::$availableSortOptionsByView[$view] ?? [];
218 }

Referenced by getActiveSortingsByView(), getDefaultSortingByView(), getSelectableSortingModes(), storeViewSorting(), and storeViewSortingOptions().

+ Here is the caller graph for this function:

◆ getCurrentSortOption()

ilPDSelectedItemsBlockViewSettings::getCurrentSortOption ( )

◆ getCurrentView()

ilPDSelectedItemsBlockViewSettings::getCurrentView ( )

Definition at line 497 of file class.ilPDSelectedItemsBlockViewSettings.php.

References $currentView.

Referenced by getEffectiveSortingData(), getEffectiveSortingOptions(), and storeActorSortingData().

+ Here is the caller graph for this function:

◆ getDefaultPresentationByView()

ilPDSelectedItemsBlockViewSettings::getDefaultPresentationByView ( int  $view)

Definition at line 301 of file class.ilPDSelectedItemsBlockViewSettings.php.

301 : string
302 {
303 return $this->settings->get('pd_def_pres_view_' . $view, 'list');
304 }

References ILIAS\Repository\settings().

Referenced by getEffectivePresentationMode(), and getSelectablePresentationModes().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDefaultSorting()

ilPDSelectedItemsBlockViewSettings::getDefaultSorting ( )

Definition at line 512 of file class.ilPDSelectedItemsBlockViewSettings.php.

512 : string
513 {
514 return $this->settings->get('dash_def_sort', $this->getSortByLocationMode());
515 }

References getSortByLocationMode(), and ILIAS\Repository\settings().

+ Here is the call graph for this function:

◆ getDefaultSortingByView()

ilPDSelectedItemsBlockViewSettings::getDefaultSortingByView ( int  $view)

Definition at line 220 of file class.ilPDSelectedItemsBlockViewSettings.php.

220 : string
221 {
222 $sorting = $this->settings->get('pd_def_sort_view_' . $view, self::SORT_BY_LOCATION);
223 if (!in_array($sorting, $this->getAvailableSortOptionsByView($view), true)) {
224 return $this->getAvailableSortOptionsByView($view)[0];
225 }
226 return $sorting;
227 }

References getAvailableSortOptionsByView(), and ILIAS\Repository\settings().

Referenced by getEffectiveSortingMode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDefaultView()

ilPDSelectedItemsBlockViewSettings::getDefaultView ( )

Definition at line 407 of file class.ilPDSelectedItemsBlockViewSettings.php.

407 : int
408 {
409 return (int) $this->settings->get('personal_items_default_view', (string) $this->getSelectedItemsView());
410 }

References getSelectedItemsView(), and ILIAS\Repository\settings().

+ Here is the call graph for this function:

◆ getEffectivePresentationMode()

ilPDSelectedItemsBlockViewSettings::getEffectivePresentationMode ( )

Definition at line 425 of file class.ilPDSelectedItemsBlockViewSettings.php.

425 : string
426 {
427 $mode = $this->actor->getPref('pd_view_pres_' . $this->currentView);
428
429 if (!in_array($mode, $this->getSelectablePresentationModes(), true)) {
430 $mode = $this->getDefaultPresentationByView($this->currentView);
431 }
432
433 return $mode;
434 }

References getDefaultPresentationByView(), and getSelectablePresentationModes().

Referenced by parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getEffectiveSortingData()

ilPDSelectedItemsBlockViewSettings::getEffectiveSortingData ( )
Returns
string

Definition at line 580 of file class.ilPDSelectedItemsBlockViewSettings.php.

580 : ?array
581 {
582 $mode = $this->getEffectiveSortingMode();
583 $key = 'pd_order_data_' . $this->getCurrentView() . '_' . $mode;
584 return in_array($mode, self::$has_data, true) ?
585 json_decode($this->actor->getPref($key) ?: '[]', true, 2) :
586 null;
587 }

References getCurrentView(), and getEffectiveSortingMode().

+ Here is the call graph for this function:

◆ getEffectiveSortingMode()

ilPDSelectedItemsBlockViewSettings::getEffectiveSortingMode ( )

Definition at line 436 of file class.ilPDSelectedItemsBlockViewSettings.php.

436 : string
437 {
438 $mode = $this->actor->getPref('pd_order_items_' . $this->currentView);
439
440 if (!in_array($mode, $this->getSelectableSortingModes(), true)) {
441 $mode = $this->getDefaultSortingByView($this->currentView);
442 }
443
444 return $mode;
445 }

References getDefaultSortingByView(), and getSelectableSortingModes().

Referenced by getEffectiveSortingData(), getEffectiveSortingOptions(), parse(), and storeActorSortingData().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getEffectiveSortingOptions()

ilPDSelectedItemsBlockViewSettings::getEffectiveSortingOptions ( )

Definition at line 589 of file class.ilPDSelectedItemsBlockViewSettings.php.

589 : array
590 {
591 return $this->getSortingOptionsByView($this->getCurrentView())[$this->getEffectiveSortingMode()] ?? [];
592 }

References getCurrentView(), getEffectiveSortingMode(), and getSortingOptionsByView().

+ Here is the call graph for this function:

◆ getLearningSequenceView()

ilPDSelectedItemsBlockViewSettings::getLearningSequenceView ( )

Definition at line 150 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\VIEW_LEARNING_SEQUENCES.

Referenced by enableView(), and isViewEnabled().

+ Here is the caller graph for this function:

◆ getListPresentationMode()

ilPDSelectedItemsBlockViewSettings::getListPresentationMode ( )

Definition at line 160 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\PRESENTATION_LIST.

Referenced by isListPresentation().

+ Here is the caller graph for this function:

◆ getMembershipsView()

ilPDSelectedItemsBlockViewSettings::getMembershipsView ( )

Definition at line 135 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\VIEW_MY_MEMBERSHIPS.

Referenced by enableView(), isMembershipsViewActive(), and isViewEnabled().

+ Here is the caller graph for this function:

◆ getPresentationViews()

ilPDSelectedItemsBlockViewSettings::getPresentationViews ( )
Returns
int[]

Definition at line 232 of file class.ilPDSelectedItemsBlockViewSettings.php.

232 : array
233 {
235 }

References $availableViews.

◆ getRecommendedContentView()

ilPDSelectedItemsBlockViewSettings::getRecommendedContentView ( )

Definition at line 155 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\VIEW_RECOMMENDED_CONTENT.

Referenced by enableView(), and isViewEnabled().

+ Here is the caller graph for this function:

◆ getSelectablePresentationModes()

ilPDSelectedItemsBlockViewSettings::getSelectablePresentationModes ( )
Returns
string[]

Definition at line 461 of file class.ilPDSelectedItemsBlockViewSettings.php.

461 : array
462 {
463 if (!$this->access->canChangePresentation($this->actor->getId())) {
464 return [$this->getDefaultPresentationByView($this->currentView)];
465 }
466 return array_intersect(
467 $this->getActivePresentationsByView($this->currentView),
468 $this->getAvailablePresentationsByView($this->currentView)
469 );
470 }

References ILIAS\Repository\access(), getActivePresentationsByView(), getAvailablePresentationsByView(), and getDefaultPresentationByView().

Referenced by getEffectivePresentationMode(), and storeActorPresentationMode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSelectableSortingModes()

ilPDSelectedItemsBlockViewSettings::getSelectableSortingModes ( )
Returns
string[]

Definition at line 450 of file class.ilPDSelectedItemsBlockViewSettings.php.

450 : array
451 {
452 return array_intersect(
453 $this->getActiveSortingsByView($this->currentView),
454 $this->getAvailableSortOptionsByView($this->currentView)
455 );
456 }

References getActiveSortingsByView(), and getAvailableSortOptionsByView().

Referenced by getEffectiveSortingMode(), and storeActorSortingMode().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getSelectedItemsView()

ilPDSelectedItemsBlockViewSettings::getSelectedItemsView ( )

◆ getSortByAlphabetMode()

ilPDSelectedItemsBlockViewSettings::getSortByAlphabetMode ( )

Definition at line 210 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\SORT_BY_ALPHABET.

Referenced by isSortedByAlphabet().

+ Here is the caller graph for this function:

◆ getSortByLocationMode()

ilPDSelectedItemsBlockViewSettings::getSortByLocationMode ( )

Definition at line 200 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\SORT_BY_LOCATION.

Referenced by getDefaultSorting(), and isSortedByLocation().

+ Here is the caller graph for this function:

◆ getSortByStartDateMode()

ilPDSelectedItemsBlockViewSettings::getSortByStartDateMode ( )

Definition at line 195 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\SORT_BY_START_DATE.

Referenced by isSortedByStartDate().

+ Here is the caller graph for this function:

◆ getSortByTypeMode()

ilPDSelectedItemsBlockViewSettings::getSortByTypeMode ( )

Definition at line 205 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\SORT_BY_TYPE.

Referenced by isSortedByType().

+ Here is the caller graph for this function:

◆ getSortingOptionsByView()

ilPDSelectedItemsBlockViewSettings::getSortingOptionsByView ( int  $view)
Returns
array<string, array<string, mixed>>

Definition at line 610 of file class.ilPDSelectedItemsBlockViewSettings.php.

610 : array
611 {
612 return array_merge(...array_map(fn($sorting) => [
613 $sorting => json_decode(
614 $this->settings->get('pd_sort_options_' . $view . '_' . $sorting) ?: '[]',
615 true,
616 2
617 ),
618 ], self::$has_options));
619 }

References ILIAS\Repository\settings().

Referenced by getEffectiveSortingOptions().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getStudyProgrammeView()

ilPDSelectedItemsBlockViewSettings::getStudyProgrammeView ( )

◆ getTilePresentationMode()

ilPDSelectedItemsBlockViewSettings::getTilePresentationMode ( )

Definition at line 165 of file class.ilPDSelectedItemsBlockViewSettings.php.

References ilPDSelectedItemsBlockConstants\PRESENTATION_TILE.

Referenced by isTilePresentation().

+ Here is the caller graph for this function:

◆ getViewName()

ilPDSelectedItemsBlockViewSettings::getViewName ( int  $view)

Definition at line 572 of file class.ilPDSelectedItemsBlockViewSettings.php.

572 : string
573 {
574 return self::$viewNames[$view];
575 }

◆ getViewPositions()

ilPDSelectedItemsBlockViewSettings::getViewPositions ( )
Returns
int[]

Definition at line 329 of file class.ilPDSelectedItemsBlockViewSettings.php.

329 : array
330 {
331 $val = $this->settings->get('pd_view_positions', '');
332 return (!$val)
334 : unserialize($val, ['allowed_classes' => false]);
335 }

References $availableViews, and ILIAS\Repository\settings().

+ Here is the call graph for this function:

◆ isLearningSequenceViewActive()

ilPDSelectedItemsBlockViewSettings::isLearningSequenceViewActive ( )

Definition at line 190 of file class.ilPDSelectedItemsBlockViewSettings.php.

190 : bool
191 {
192 return $this->currentView === self::VIEW_LEARNING_SEQUENCES;
193 }

References ilPDSelectedItemsBlockConstants\VIEW_LEARNING_SEQUENCES.

◆ isListPresentation()

ilPDSelectedItemsBlockViewSettings::isListPresentation ( )

Definition at line 542 of file class.ilPDSelectedItemsBlockViewSettings.php.

542 : bool
543 {
544 return $this->currentPresentationOption === $this->getListPresentationMode();
545 }

References getListPresentationMode().

+ Here is the call graph for this function:

◆ isMembershipsViewActive()

ilPDSelectedItemsBlockViewSettings::isMembershipsViewActive ( )

Definition at line 170 of file class.ilPDSelectedItemsBlockViewSettings.php.

170 : bool
171 {
172 return $this->currentView === $this->getMembershipsView();
173 }

References getMembershipsView().

+ Here is the call graph for this function:

◆ isRecommendedContentViewActive()

ilPDSelectedItemsBlockViewSettings::isRecommendedContentViewActive ( )

Definition at line 175 of file class.ilPDSelectedItemsBlockViewSettings.php.

175 : bool
176 {
177 return $this->currentView === self::VIEW_RECOMMENDED_CONTENT;
178 }

References ilPDSelectedItemsBlockConstants\VIEW_RECOMMENDED_CONTENT.

◆ isSelectedItemsViewActive()

ilPDSelectedItemsBlockViewSettings::isSelectedItemsViewActive ( )

Definition at line 180 of file class.ilPDSelectedItemsBlockViewSettings.php.

180 : bool
181 {
182 return $this->currentView === $this->getSelectedItemsView();
183 }

References getSelectedItemsView().

+ Here is the call graph for this function:

◆ isSortedByAlphabet()

ilPDSelectedItemsBlockViewSettings::isSortedByAlphabet ( )

Definition at line 522 of file class.ilPDSelectedItemsBlockViewSettings.php.

522 : bool
523 {
524 return $this->currentSortOption === $this->getSortByAlphabetMode();
525 }

References getSortByAlphabetMode().

+ Here is the call graph for this function:

◆ isSortedByLocation()

ilPDSelectedItemsBlockViewSettings::isSortedByLocation ( )

Definition at line 527 of file class.ilPDSelectedItemsBlockViewSettings.php.

527 : bool
528 {
529 return $this->currentSortOption === $this->getSortByLocationMode();
530 }

References getSortByLocationMode().

+ Here is the call graph for this function:

◆ isSortedByStartDate()

ilPDSelectedItemsBlockViewSettings::isSortedByStartDate ( )

Definition at line 532 of file class.ilPDSelectedItemsBlockViewSettings.php.

532 : bool
533 {
534 return $this->currentSortOption === $this->getSortByStartDateMode();
535 }

References getSortByStartDateMode().

+ Here is the call graph for this function:

◆ isSortedByType()

ilPDSelectedItemsBlockViewSettings::isSortedByType ( )

Definition at line 517 of file class.ilPDSelectedItemsBlockViewSettings.php.

517 : bool
518 {
519 return $this->currentSortOption === $this->getSortByTypeMode();
520 }

References getSortByTypeMode().

+ Here is the call graph for this function:

◆ isStudyProgrammeViewActive()

ilPDSelectedItemsBlockViewSettings::isStudyProgrammeViewActive ( )

Definition at line 185 of file class.ilPDSelectedItemsBlockViewSettings.php.

185 : bool
186 {
187 return $this->currentView === $this->getStudyProgrammeView();
188 }

References getStudyProgrammeView().

+ Here is the call graph for this function:

◆ isTilePresentation()

ilPDSelectedItemsBlockViewSettings::isTilePresentation ( )

Definition at line 537 of file class.ilPDSelectedItemsBlockViewSettings.php.

537 : bool
538 {
539 return $this->currentPresentationOption === $this->getTilePresentationMode();
540 }

References getTilePresentationMode().

+ Here is the call graph for this function:

◆ isValidView()

ilPDSelectedItemsBlockViewSettings::isValidView ( int  $view)

Definition at line 507 of file class.ilPDSelectedItemsBlockViewSettings.php.

507 : bool
508 {
509 return in_array($view, $this->validViews, true);
510 }

◆ isViewEnabled()

ilPDSelectedItemsBlockViewSettings::isViewEnabled ( int  $view)

Definition at line 337 of file class.ilPDSelectedItemsBlockViewSettings.php.

337 : bool
338 {
339 switch ($view) {
340 case $this->getMembershipsView():
341 return $this->enabledMemberships();
342 case $this->getSelectedItemsView():
344 case $this->getStudyProgrammeView():
346 case $this->getRecommendedContentView():
348 case $this->getLearningSequenceView():
350 default:
351 return false;
352 }
353 }
return['delivery_method'=> 'php',]
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...

References enabledLearningSequences(), enabledMemberships(), enabledRecommendedContent(), enabledSelectedItems(), enabledStudyProgrammes(), getLearningSequenceView(), getMembershipsView(), getRecommendedContentView(), getSelectedItemsView(), and getStudyProgrammeView().

+ Here is the call graph for this function:

◆ parse()

ilPDSelectedItemsBlockViewSettings::parse ( )

Definition at line 417 of file class.ilPDSelectedItemsBlockViewSettings.php.

417 : void
418 {
419 $this->validViews = self::$availableViews;
420
421 $this->currentSortOption = $this->getEffectiveSortingMode();
422 $this->currentPresentationOption = $this->getEffectivePresentationMode();
423 }

References $availableViews, getEffectivePresentationMode(), and getEffectiveSortingMode().

+ Here is the call graph for this function:

◆ setViewPositions()

ilPDSelectedItemsBlockViewSettings::setViewPositions ( array  $positions)
Parameters
int[]$positions

Definition at line 321 of file class.ilPDSelectedItemsBlockViewSettings.php.

321 : void
322 {
323 $this->settings->set('pd_view_positions', serialize($positions));
324 }

References ILIAS\Repository\settings().

+ Here is the call graph for this function:

◆ storeActorPresentationMode()

ilPDSelectedItemsBlockViewSettings::storeActorPresentationMode ( string  $presentationMode)

Definition at line 472 of file class.ilPDSelectedItemsBlockViewSettings.php.

472 : void
473 {
474 if (in_array($presentationMode, $this->getSelectablePresentationModes())) {
475 $this->actor->writePref(
476 'pd_view_pres_' . $this->currentView,
477 $presentationMode
478 );
479 }
480 }

References getSelectablePresentationModes().

+ Here is the call graph for this function:

◆ storeActorSortingData()

ilPDSelectedItemsBlockViewSettings::storeActorSortingData ( array  $data)

Definition at line 594 of file class.ilPDSelectedItemsBlockViewSettings.php.

594 : void
595 {
596 $mode = $this->getEffectiveSortingMode();
597 if (in_array($mode, self::$has_options, true)) {
598 $this->actor->writePref('pd_order_data_' . $this->getCurrentView() . '_' . $mode, json_encode($data));
599 }
600 }

References $data, getCurrentView(), and getEffectiveSortingMode().

+ Here is the call graph for this function:

◆ storeActorSortingMode()

ilPDSelectedItemsBlockViewSettings::storeActorSortingMode ( string  $sortingMode)

Definition at line 482 of file class.ilPDSelectedItemsBlockViewSettings.php.

482 : void
483 {
484 if (in_array($sortingMode, $this->getSelectableSortingModes())) {
485 $this->actor->writePref(
486 'pd_order_items_' . $this->currentView,
487 $sortingMode
488 );
489 }
490 }

References getSelectableSortingModes().

+ Here is the call graph for this function:

◆ storeDefaultView()

ilPDSelectedItemsBlockViewSettings::storeDefaultView ( int  $view)

Definition at line 412 of file class.ilPDSelectedItemsBlockViewSettings.php.

412 : void
413 {
414 $this->settings->set('personal_items_default_view', (string) $view);
415 }

References ILIAS\Repository\settings().

+ Here is the call graph for this function:

◆ storeViewPresentation()

ilPDSelectedItemsBlockViewSettings::storeViewPresentation ( int  $view,
string  $default,
array  $active 
)
Parameters
string[]$active

Definition at line 292 of file class.ilPDSelectedItemsBlockViewSettings.php.

292 : void
293 {
294 if (!in_array($default, $active, true)) {
295 $active[] = $default;
296 }
297 $this->settings->set('pd_def_pres_view_' . $view, $default);
298 $this->settings->set('pd_active_pres_view_' . $view, serialize($active));
299 }

References ILIAS\Repository\settings().

+ Here is the call graph for this function:

◆ storeViewSorting()

ilPDSelectedItemsBlockViewSettings::storeViewSorting ( int  $view,
string  $type,
array  $active 
)

Definition at line 245 of file class.ilPDSelectedItemsBlockViewSettings.php.

245 : void
246 {
247 if (!in_array($type, $active, true)) {
248 $active[] = $type;
249 }
250
251 assert(in_array($type, $this->getAvailableSortOptionsByView($view), true));
252
253 $this->settings->set('pd_def_sort_view_' . $view, $type);
254 $this->settings->set('pd_active_sort_view_' . $view, serialize($active));
255 }

References getAvailableSortOptionsByView(), and ILIAS\Repository\settings().

+ Here is the call graph for this function:

◆ storeViewSortingOptions()

ilPDSelectedItemsBlockViewSettings::storeViewSortingOptions ( int  $view,
array  $options 
)

Definition at line 257 of file class.ilPDSelectedItemsBlockViewSettings.php.

257 : void
258 {
259 foreach ($options as $sorting => $option) {
260 if (in_array($sorting, $this->getAvailableSortOptionsByView($view), true)) {
261 $this->settings->set(
262 'pd_sort_options_' . $view . '_' . $sorting,
263 json_encode($option)
264 );
265 }
266 }
267 }

References getAvailableSortOptionsByView(), and ILIAS\Repository\settings().

+ Here is the call graph for this function:

Field Documentation

◆ $access

DashboardAccess ilPDSelectedItemsBlockViewSettings::$access
protected

◆ $actor

ilObjUser ilPDSelectedItemsBlockViewSettings::$actor
protected

Definition at line 113 of file class.ilPDSelectedItemsBlockViewSettings.php.

Referenced by __construct(), and getActor().

◆ $availablePresentations

array ilPDSelectedItemsBlockViewSettings::$availablePresentations
staticprotected

◆ $availablePresentationsByView

array ilPDSelectedItemsBlockViewSettings::$availablePresentationsByView
staticprotected
Initial value:
= [
self::VIEW_SELECTED_ITEMS => [
],
self::VIEW_RECOMMENDED_CONTENT => [
],
self::VIEW_MY_MEMBERSHIPS => [
],
self::VIEW_LEARNING_SEQUENCES => [
],
self::VIEW_MY_STUDYPROGRAMME => [
],
]

Definition at line 84 of file class.ilPDSelectedItemsBlockViewSettings.php.

◆ $availableSortOptions

array ilPDSelectedItemsBlockViewSettings::$availableSortOptions
staticprotected

◆ $availableSortOptionsByView

array ilPDSelectedItemsBlockViewSettings::$availableSortOptionsByView
staticprotected

◆ $availableViews

array ilPDSelectedItemsBlockViewSettings::$availableViews
staticprotected

◆ $currentPresentationOption

string ilPDSelectedItemsBlockViewSettings::$currentPresentationOption = self::PRESENTATION_LIST
protected

◆ $currentSortOption

string ilPDSelectedItemsBlockViewSettings::$currentSortOption = self::SORT_BY_LOCATION
protected

Definition at line 116 of file class.ilPDSelectedItemsBlockViewSettings.php.

Referenced by getCurrentSortOption().

◆ $currentView

int ilPDSelectedItemsBlockViewSettings::$currentView = self::VIEW_SELECTED_ITEMS
protected

Definition at line 115 of file class.ilPDSelectedItemsBlockViewSettings.php.

Referenced by getCurrentView().

◆ $has_data

array ilPDSelectedItemsBlockViewSettings::$has_data = [self::SORT_MANUALLY]
staticprivate

◆ $has_options

array ilPDSelectedItemsBlockViewSettings::$has_options = [self::SORT_MANUALLY]
staticprivate

◆ $options_by_sortation

array ilPDSelectedItemsBlockViewSettings::$options_by_sortation
staticprivate
Initial value:
= [
self::SORT_MANUALLY => ['top', 'bot'],
]

Definition at line 109 of file class.ilPDSelectedItemsBlockViewSettings.php.

◆ $settings

Setting ilPDSelectedItemsBlockViewSettings::$settings
protected

◆ $validViews

array ilPDSelectedItemsBlockViewSettings::$validViews = []
protected

◆ $viewNames

array ilPDSelectedItemsBlockViewSettings::$viewNames
staticprotected
Initial value:
= [
self::VIEW_SELECTED_ITEMS => 'favourites',
self::VIEW_RECOMMENDED_CONTENT => 'recommended_content',
self::VIEW_MY_MEMBERSHIPS => 'memberships',
self::VIEW_LEARNING_SEQUENCES => 'learning_sequences',
self::VIEW_MY_STUDYPROGRAMME => 'study_programmes',
]

Definition at line 35 of file class.ilPDSelectedItemsBlockViewSettings.php.


The documentation for this class was generated from the following file: