ILIAS
trunk Revision v11.0_alpha-2638-g80c1d007f79
◀ ilDoc Overview
UserLanguage.php
Go to the documentation of this file.
1
<?php
2
19
declare(strict_types=1);
20
21
namespace
ILIAS\LegalDocuments\Condition
;
22
23
use
ILIAS\LegalDocuments\Condition
;
24
use
ILIAS\LegalDocuments\ConditionDefinition
;
25
use
ILIAS\LegalDocuments\Condition\Definition\UserLanguageDefinition
;
26
use
ILIAS\LegalDocuments\Value\CriterionContent
;
27
use
ILIAS\UI\Component\Component
;
28
use
ILIAS\LegalDocuments\ConsumerToolbox\UI
;
29
use
ilObjUser
;
30
31
class
UserLanguage
implements
Condition
32
{
33
public
function
__construct
(
34
private
readonly
CriterionContent
$criterion,
35
private
readonly
UserLanguageDefinition
$definition,
36
private
readonly
UI
$ui
37
) {
38
}
39
40
public
function
asComponent
():
Component
41
{
42
return
$this->
ui
->create()->legacy()->content(sprintf(
43
'<div><b>%s</b><br/>%s</div>'
,
44
$this->
definition
->translatedType(),
45
$this->
definition
->translatedLanguage($this->criterion->arguments()[
'lng'
])
46
));
47
}
48
49
public
function
eval
(
ilObjUser
$user): bool
50
{
51
$user_lang = $user->
getLanguage
() ?: $this->
ui
->getDefaultLanguage();
52
return
strtoupper($user_lang) === strtoupper($this->criterion->arguments()[
'lng'
]);
53
}
54
55
public
function
definition
():
ConditionDefinition
56
{
57
return
$this->definition;
58
}
59
60
public
function
knownToNeverMatchWith
(
Condition
$other): bool
61
{
62
return
$other instanceof (self::class);
63
}
64
}
UserLanguageDefinition
ConditionDefinition
Factory
ILIAS\LegalDocuments\ConditionDefinition
Definition:
ConditionDefinition.php:26
ILIAS\UI\Component
Component
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
CriterionContent
ILIAS\LegalDocuments\Condition\UserLanguage\knownToNeverMatchWith
knownToNeverMatchWith(Condition $other)
Definition:
UserLanguage.php:60
ilObjUser
ILIAS\LegalDocuments\Condition\UserLanguage\asComponent
asComponent()
Definition:
UserLanguage.php:40
ILIAS\Repository\ui
ui()
Definition:
trait.GlobalDICGUIServices.php:53
UI
ILIAS\LegalDocuments\Condition\UserLanguage
Definition:
UserLanguage.php:31
ILIAS\LegalDocuments\Condition\UserLanguage\eval
eval(ilObjUser $user)
Definition:
UserLanguage.php:49
ILIAS\LegalDocuments\Condition
Definition:
Condition.php:26
ILIAS\LegalDocuments\Value\CriterionContent
Definition:
CriterionContent.php:23
ILIAS\LegalDocuments\Condition
ILIAS\LegalDocuments\Condition\UserLanguage\__construct
__construct(private readonly CriterionContent $criterion, private readonly UserLanguageDefinition $definition, private readonly UI $ui)
Definition:
UserLanguage.php:33
ILIAS\LegalDocuments\Condition\Definition\UserLanguageDefinition
Definition:
UserLanguageDefinition.php:33
ilObjUser\getLanguage
getLanguage()
Definition:
class.ilObjUser.php:1520
ILIAS\LegalDocuments\Condition\UserLanguage\definition
definition()
Definition:
UserLanguage.php:55
components
ILIAS
LegalDocuments
classes
Condition
UserLanguage.php
Generated on Sun Aug 31 2025 23:03:13 for ILIAS by
1.8.13 (using
Doxyfile
)