DisplayPreferenceRepository
in package
Repository for managing user display preferences.
Implements fallback chain: User Preference → Global Setting → Hardcoded Default
Table of Contents
Methods
- getAllUserPreferences() : Collection
- Get all preferences for a user.
- getAvailableModes() : array<string, array<string, string>>
- Get available display modes with metadata.
- getDefaultPreference() : array<string, mixed>
- Get default preference for a module.
- getModuleModes() : array<string|int, string>
- Get modes available for a specific module (respects global settings).
- getPreference() : array<string, mixed>
- Get effective preference for a user and module.
- getUserPreference() : array<string, mixed>|null
- Get user's own preference (without fallback).
- hasCustomPreference() : bool
- Check if user has custom preference for module.
- resetAllUserPreferences() : int
- Reset all user preferences for a user.
- resetToGlobal() : bool
- Reset user's preference to global/default.
- savePreference() : bool
- Save user's display preference.
- setDisplayMode() : bool
- Update only the display mode for quick switching.
Methods
getAllUserPreferences()
Get all preferences for a user.
public
getAllUserPreferences(int $userId) : Collection
Parameters
- $userId : int
-
User ID
Return values
CollectiongetAvailableModes()
Get available display modes with metadata.
public
getAvailableModes() : array<string, array<string, string>>
Return values
array<string, array<string, string>>getDefaultPreference()
Get default preference for a module.
public
getDefaultPreference(string $module) : array<string, mixed>
Parameters
- $module : string
-
Module name
Return values
array<string, mixed>getModuleModes()
Get modes available for a specific module (respects global settings).
public
getModuleModes(string $module) : array<string|int, string>
Parameters
- $module : string
-
Module name
Return values
array<string|int, string>getPreference()
Get effective preference for a user and module.
public
getPreference(int $userId, string $module) : array<string, mixed>
Fallback chain: User → Global → Default
Parameters
- $userId : int
-
User ID (0 for anonymous)
- $module : string
-
Module name
Return values
array<string, mixed> —Effective settings with source info
getUserPreference()
Get user's own preference (without fallback).
public
getUserPreference(int $userId, string $module) : array<string, mixed>|null
Parameters
- $userId : int
-
User ID
- $module : string
-
Module name
Return values
array<string, mixed>|nullhasCustomPreference()
Check if user has custom preference for module.
public
hasCustomPreference(int $userId, string $module) : bool
Parameters
- $userId : int
-
User ID
- $module : string
-
Module name
Return values
boolresetAllUserPreferences()
Reset all user preferences for a user.
public
resetAllUserPreferences(int $userId) : int
Parameters
- $userId : int
-
User ID
Return values
int —Number of reset preferences
resetToGlobal()
Reset user's preference to global/default.
public
resetToGlobal(int $userId, string $module) : bool
Parameters
- $userId : int
-
User ID
- $module : string
-
Module name
Return values
bool —Success status
savePreference()
Save user's display preference.
public
savePreference(int $userId, string $module, array<string, mixed> $data) : bool
Parameters
- $userId : int
-
User ID
- $module : string
-
Module name
- $data : array<string, mixed>
-
Preference data
Return values
bool —Success status
setDisplayMode()
Update only the display mode for quick switching.
public
setDisplayMode(int $userId, string $module, string $mode) : bool
Parameters
- $userId : int
-
User ID
- $module : string
-
Module name
- $mode : string
-
Display mode
Return values
bool —Success status