UpdateLanguage
in package
Use case for updating an existing language.
Tags
Table of Contents
Properties
Methods
- __construct() : mixed
- execute() : array{success: bool, reparsed: ?int, error: ?string}
- Update an existing language from request data.
- updateFromData() : array{success: bool, reparsed: int, message: string}
- Update an existing language from data array (API-friendly version).
- buildLanguageSql() : void
- Build SQL and execute update for a language.
- emptyToNull() : string|null
- Convert empty strings to null.
- getLanguageDataFromRequest() : array<string, string|int|bool|null>
- Get language data from request using InputValidator.
- getString() : string
- Get a string value from data array, defaulting to empty string.
- getStringOrNull() : string|null
- Get a string or null value from data array.
- needsReparsing() : bool
- Check if language changes require reparsing texts.
- normalizeLanguageData() : array<string, bool|int|null|string>
- Normalize language data from API request to database fields.
Properties
$reparseUseCase
private
ReparseLanguageTexts
$reparseUseCase
Methods
__construct()
public
__construct([ReparseLanguageTexts|null $reparseUseCase = null ]) : mixed
Parameters
- $reparseUseCase : ReparseLanguageTexts|null = null
-
Reparse use case
execute()
Update an existing language from request data.
public
execute(int $id) : array{success: bool, reparsed: ?int, error: ?string}
Parameters
- $id : int
-
Language ID
Return values
array{success: bool, reparsed: ?int, error: ?string}updateFromData()
Update an existing language from data array (API-friendly version).
public
updateFromData(int $id, array<string, mixed> $data) : array{success: bool, reparsed: int, message: string}
Parameters
- $id : int
-
Language ID
- $data : array<string, mixed>
-
Language data (camelCase keys)
Return values
array{success: bool, reparsed: int, message: string}buildLanguageSql()
Build SQL and execute update for a language.
private
buildLanguageSql(array<string, string|int|bool|null> $data, int $id) : void
Parameters
- $data : array<string, string|int|bool|null>
-
Language data
- $id : int
-
Language ID
emptyToNull()
Convert empty strings to null.
private
emptyToNull(string|null $value) : string|null
Parameters
- $value : string|null
-
Value to convert
Return values
string|null —Trimmed value or null if empty
getLanguageDataFromRequest()
Get language data from request using InputValidator.
private
getLanguageDataFromRequest() : array<string, string|int|bool|null>
Return values
array<string, string|int|bool|null>getString()
Get a string value from data array, defaulting to empty string.
private
getString(array<string, string|int|bool|null> $data, string $key) : string
Parameters
- $data : array<string, string|int|bool|null>
-
Data array
- $key : string
-
Key to retrieve
Return values
string —Value as string
getStringOrNull()
Get a string or null value from data array.
private
getStringOrNull(array<string, string|int|bool|null> $data, string $key) : string|null
Parameters
- $data : array<string, string|int|bool|null>
-
Data array
- $key : string
-
Key to retrieve
Return values
string|null —Value as string or null
needsReparsing()
Check if language changes require reparsing texts.
private
needsReparsing(array<string, string|int|bool|null> $newData, array<string, mixed> $oldRecord) : bool
Parameters
- $newData : array<string, string|int|bool|null>
-
New language data
- $oldRecord : array<string, mixed>
-
Old language data
Return values
boolnormalizeLanguageData()
Normalize language data from API request to database fields.
private
normalizeLanguageData(array<string, mixed> $data) : array<string, bool|int|null|string>
Parameters
- $data : array<string, mixed>
-
API request data (camelCase keys)
Return values
array<string, bool|int|null|string> —Normalized data (LgXxx keys)