19 declare(strict_types=1);
    31         private readonly \
ILIAS\
UI\Factory $ui_factory,
    37         private readonly 
string $parent_cmd,
    38         private readonly 
bool $has_write_access
    42         $form_action = $this->df->uri(
    44             $this->
ctrl->getLinkTarget($this->parent_gui, $this->parent_cmd)
    60         return $this->ui_factory
    63                 $this->
lng->txt(
'auth_saml_idps'),
    70             ->withRequest($this->http_request);
    79             'title' => $this->ui_factory
    82                 ->text($this->
lng->txt(
'saml_tab_head_idp'))
    83                 ->withIsSortable(
true),
    84             'active' => $this->ui_factory
    88                     $this->
lng->txt(
'status'),
    89                     $this->ui_factory->symbol()->icon()->custom(
    90                         'assets/images/standard/icon_ok.svg',
    91                         $this->
lng->txt(
'active'),
    94                     $this->ui_factory->symbol()->icon()->custom(
    95                         'assets/images/standard/icon_not_ok.svg',
    96                         $this->
lng->txt(
'inactive'),
   100                 ->withIsSortable(
true)
   101                 ->withOrderingLabels(
   102                     "{$this->lng->txt('status')}, {$this->lng->txt('active')} {$this->lng->txt('order_option_first')}",
   103                     "{$this->lng->txt('status')}, {$this->lng->txt('inactive')} {$this->lng->txt('order_option_first')}"   113         if (!$this->has_write_access) {
   118             'edit' => $this->ui_factory->table()->action()->single(
   119                 $this->
lng->txt(
'edit'),
   120                 $this->url_builder->withParameter($this->action_parameter_token, 
'showIdpSettings'),
   123             'activate' => $this->ui_factory->table()->action()->single(
   124                 $this->
lng->txt(
'activate'),
   125                 $this->url_builder->withParameter($this->action_parameter_token, 
'activateIdp'),
   128             'deactivate' => $this->ui_factory->table()->action()->single(
   129                 $this->
lng->txt(
'deactivate'),
   130                 $this->url_builder->withParameter($this->action_parameter_token, 
'deactivateIdp'),
   133             'delete' => $this->ui_factory->table()->action()->single(
   134                 $this->
lng->txt(
'delete'),
   135                 $this->url_builder->withParameter($this->action_parameter_token, 
'confirmDeleteIdp'),
   148         [$order_field, $order_direction] = $order->join([], 
static function ($ret, $key, $value) {
   149             return [$key, $value];
   152         usort($records, 
static function (
ilSamlIdp $left, 
ilSamlIdp $right) use ($order_field): 
int {
   153             if ($order_field === 
'title') {
   160         if ($order_direction === \
ILIAS\
Data\Order::DESC) {
   161             $records = array_reverse($records);
   164         $records = array_slice($records, $range->getStart(), $range->getLength());
   171         array $visible_column_ids,
   175         ?array $additional_parameters
   177         foreach ($this->
getRecords($range, $order) as $item) {
   179                 ->buildDataRow((
string) $item->getIdpId(), [
   180                     'title' => $item->getEntityId(),
   181                     'active' => $item->isActive()
   183                 ->withDisabledAction(
   187                 ->withDisabledAction(
   196         return count($this->idps);
 
readonly ILIAS UI URLBuilder $url_builder
 
__construct(private readonly ilSamlSettingsGUI $parent_gui, private readonly \ILIAS\UI\Factory $ui_factory, private readonly \ILIAS\UI\Renderer $ui_renderer, private readonly ilLanguage $lng, private readonly ilCtrlInterface $ctrl, private readonly \Psr\Http\Message\ServerRequestInterface $http_request, private readonly \ILIAS\Data\Factory $df, private readonly string $parent_cmd, private readonly bool $has_write_access)
 
getRecords(\ILIAS\Data\Range $range, \ILIAS\Data\Order $order)
 
Interface Observer  Contains several chained tasks and infos about them. 
 
getRows(\ILIAS\UI\Component\Table\DataRowBuilder $row_builder, array $visible_column_ids, \ILIAS\Data\Range $range, \ILIAS\Data\Order $order, ?array $filter_data, ?array $additional_parameters)
 
readonly ILIAS UI URLBuilderToken $action_parameter_token
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
getTotalRowCount(?array $filter_data, ?array $additional_parameters)
Mainly for the purpose of pagination-support, it is important to know about the total number of recor...
 
readonly ILIAS UI URLBuilderToken $row_id_token
 
static strCmp(string $a, string $b)