ILIAS  trunk Revision v11.0_alpha-2638-g80c1d007f79
ILIAS\Dashboard\DataRetrieval\Language Class Reference
+ Inheritance diagram for ILIAS\Dashboard\DataRetrieval\Language:
+ Collaboration diagram for ILIAS\Dashboard\DataRetrieval\Language:

Public Member Functions

 __construct ()
 
 getRows (DataRowBuilder $row_builder, array $visible_column_ids, Range $range, Order $order, ?array $filter_data, ?array $additional_parameters)
 This is called by the table to retrieve rows; map data-records to rows using the $row_builder e.g. More...
 
 getTotalRowCount (?array $filter_data, ?array $additional_parameters)
 Mainly for the purpose of pagination-support, it is important to know about the total number of records available. More...
 

Protected Attributes

ilLanguage $lng
 

Detailed Description

Definition at line 31 of file Language.php.

Constructor & Destructor Documentation

◆ __construct()

ILIAS\Dashboard\DataRetrieval\Language::__construct ( )

Definition at line 35 of file Language.php.

References $DIC, and ILIAS\Repository\lng().

36  {
37  global $DIC;
38  $this->lng = $DIC->language();
39  }
global $DIC
Definition: shib_login.php:26
+ Here is the call graph for this function:

Member Function Documentation

◆ getRows()

ILIAS\Dashboard\DataRetrieval\Language::getRows ( DataRowBuilder  $row_builder,
array  $visible_column_ids,
Range  $range,
Order  $order,
?array  $filter_data,
?array  $additional_parameters 
)

This is called by the table to retrieve rows; map data-records to rows using the $row_builder e.g.

yield $row_builder->buildStandardRow($row_id, $record).

Parameters
string[]$visible_column_ids

Implements ILIAS\UI\Component\Table\DataRetrieval.

Definition at line 40 of file Language.php.

References ILIAS\UI\Component\Table\DataRowBuilder\buildDataRow(), ilObjLanguage\countUsers(), ILIAS\Data\Range\getLength(), ILIAS\Data\Range\getStart(), and ILIAS\Repository\lng().

40  : Generator
41  {
42  foreach (array_slice($this->lng->getInstalledLanguages(), $range->getStart(), $range->getLength()) as $key) {
43  $title = $this->lng->txt('meta_l_' . $key);
44  if ($key === $this->lng->getDefaultLanguage()) {
45  $title .= ' (' . $this->lng->txt('system_language') . ')';
46  }
47  yield $row_builder->buildDataRow($key, [
48  'name' => $title,
49  'user_count' => ilObjLanguage::countUsers($key)
50  ]);
51  }
52  }
static countUsers(string $a_lang)
Count number of users that use a language.
+ Here is the call graph for this function:

◆ getTotalRowCount()

ILIAS\Dashboard\DataRetrieval\Language::getTotalRowCount ( ?array  $filter_data,
?array  $additional_parameters 
)

Mainly for the purpose of pagination-support, it is important to know about the total number of records available.

Given the nature of a DataTable, which is, opposite to a PresentationTable, rather administrative than explorative, this information will increase user experience quite a bit. However, you may return null, if the call is to costly, but expect the View Control to look a little different in this case.

Make sure that potential filters or user restrictions are being applied to the count.

Implements ILIAS\UI\Component\Table\DataRetrieval.

Definition at line 54 of file Language.php.

References ILIAS\Repository\lng().

54  : ?int
55  {
56  return count($this->lng->getInstalledLanguages());
57  }
+ Here is the call graph for this function:

Field Documentation

◆ $lng

ilLanguage ILIAS\Dashboard\DataRetrieval\Language::$lng
protected

Definition at line 33 of file Language.php.


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