ILIAS  release_7 Revision v7.30-3-g800a261c036
ilLanguageMetricsCollectedObjective Class Reference
+ Inheritance diagram for ilLanguageMetricsCollectedObjective:
+ Collaboration diagram for ilLanguageMetricsCollectedObjective:

Public Member Functions

 __construct (Setup\Metrics\Storage $storage, \ilSetupLanguage $il_setup_language)
 
 getTentativePreconditions (Setup\Environment $environment)
 
 collectFrom (Setup\Environment $environment, Setup\Metrics\Storage $storage)
 

Protected Attributes

 $il_setup_language
 

Detailed Description

Definition at line 7 of file class.ilLanguageMetricsCollectedObjective.php.

Constructor & Destructor Documentation

◆ __construct()

ilLanguageMetricsCollectedObjective::__construct ( Setup\Metrics\Storage  $storage,
\ilSetupLanguage  $il_setup_language 
)

Definition at line 14 of file class.ilLanguageMetricsCollectedObjective.php.

17 {
18 parent::__construct($storage);
19 $this->il_setup_language = $il_setup_language;
20 }
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc

References $il_setup_language, and ILIAS\GlobalScreen\Provider\__construct().

+ Here is the call graph for this function:

Member Function Documentation

◆ collectFrom()

ilLanguageMetricsCollectedObjective::collectFrom ( Setup\Environment  $environment,
Setup\Metrics\Storage  $storage 
)

Definition at line 31 of file class.ilLanguageMetricsCollectedObjective.php.

31 : void
32 {
33 $client_ini = $environment->getResource(Setup\Environment::RESOURCE_CLIENT_INI);
34 if ($client_ini) {
35 $storage->storeConfigText(
36 "default_language",
37 $client_ini->readVariable("language", "default"),
38 "The language that is used by default."
39 );
40 }
41
42 $db = $environment->getResource(Setup\Environment::RESOURCE_DATABASE);
43 if (!($db instanceof \ilDBInterface)) {
44 return;
45 }
46 $this->il_setup_language->setDbHandler($db);
47
48 // TODO: Remove this once ilSetupLanguage (or a successor) supports proper
49 // DI for all methods.
50 $GLOBALS["ilDB"] = $db;
51
52 $installed_languages = [];
53 $local_languages = $this->il_setup_language->getLocalLanguages();
54 foreach ($this->il_setup_language->getInstalledLanguages() as $lang) {
55 $local_file = new Setup\Metrics\Metric(
56 Setup\Metrics\Metric::STABILITY_STABLE,
57 Setup\Metrics\Metric::TYPE_BOOL,
58 in_array($lang, $local_languages),
59 "Is there a local language file for the language?"
60 );
61 $local_changes = new Setup\Metrics\Metric(
62 Setup\Metrics\Metric::STABILITY_STABLE,
63 Setup\Metrics\Metric::TYPE_BOOL,
64 count($this->il_setup_language->getLocalChanges($lang)) > 0,
65 "Are there local changes for the language?"
66 );
67 $installed_languages[$lang] = new Setup\Metrics\Metric(
68 Setup\Metrics\Metric::STABILITY_STABLE,
69 Setup\Metrics\Metric::TYPE_COLLECTION,
70 [
71 "local_file" => $local_file,
72 "local_changes" => $local_changes
73 ]
74 );
75 };
76 $installed_languages = new Setup\Metrics\Metric(
77 Setup\Metrics\Metric::STABILITY_STABLE,
78 Setup\Metrics\Metric::TYPE_COLLECTION,
79 $installed_languages
80 );
81 $storage->store(
82 "installed_languages",
83 $installed_languages
84 );
85 }
if(!defined('PATH_SEPARATOR')) $GLOBALS['_PEAR_default_error_mode']
Definition: PEAR.php:64
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
$lang
Definition: xapiexit.php:8

References $GLOBALS, and $lang.

◆ getTentativePreconditions()

ilLanguageMetricsCollectedObjective::getTentativePreconditions ( Setup\Environment  $environment)

Field Documentation

◆ $il_setup_language

ilLanguageMetricsCollectedObjective::$il_setup_language
protected

Definition at line 12 of file class.ilLanguageMetricsCollectedObjective.php.

Referenced by __construct().


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