19 declare(strict_types=1);
    49     private \ILIAS\ResourceStorage\Services 
$irss;
    62         $this->irss = $DIC->resourceStorage();
    63         $this->data_factory = new \ILIAS\Data\Factory();
    68         yield 
from $this->upload_builder->getDropZone();
    70         yield $this->ui_factory->panel()->standard(
    71             $this->request->getTitle(),
    81         return $this->ui_factory->table()->data(
    84                 self::F_TITLE => $this->ui_factory->table()->column()->text(
    86                 )->withIsSortable(
true),
    87                 self::F_SIZE => $this->ui_factory->table()->column()->text(
    89                 )->withIsSortable(
true),
    90                 self::F_CREATION_DATE => $this->ui_factory->table()->column()->date(
    91                     $this->
language->txt(self::F_CREATION_DATE),
    92                     $this->data_factory->dateFormat()->germanLong()
    93                 )->withIsSortable(
true),
    94                 self::F_TYPE => $this->ui_factory->table()->column()->text(
    96                 )->withIsSortable(
false),
   100             $this->
http->request()
   102             $this->action_builder->getActions()
   104             $this->request->getItemsPerPage()
   110         array $visible_column_ids,
   114         ?array $additional_parameters
   118         foreach ($this->data_provider->getIdentifications() as $resource_identification) {
   119             $information = $this->getResourceInfo($resource_identification);
   120             $mime_type = $information->getMimeType();
   123                 $this->
hash($resource_identification->serialize()),
   125                     self::F_TITLE => $information->getTitle(),
   126                     self::F_SIZE => $this->formatSize($information->getSize()),
   127                     self::F_CREATION_DATE => $information->getCreationDate(),
   128                     self::F_TYPE => $information->getMimeType(),
   132             if (!in_array($mime_type, [
'application/zip', 
'application/x-zip-compressed'])) {
   142         $sort_field = array_keys($order->
get())[0];
   143         $sort_direction = $order->
get()[$sort_field];
   147         $this->data_provider->getViewRequest()->setPage((
int) round($start / $length, 0, PHP_ROUND_HALF_DOWN));
   148         $this->data_provider->getViewRequest()->setItemsPerPage($length);
   150         switch ($sort_field . 
'_' . $sort_direction) {
   163             case self::F_CREATION_DATE . 
'_' . 
Order::ASC:
   174         return $this->data_provider->getTotal();
 const BY_CREATION_DATE_ASC
 
Class ChatMainBarProvider . 
 
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
 
Both the subject and the direction need to be specified when expressing an order. ...
 
buildDataRow(string $id, array $record)
 
ILIAS Data Factory $data_factory
 
static http()
Fetches the global http state from ILIAS. 
 
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...
 
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...
 
initSortingAndOrdering(Range $range, Order $order)
 
__construct(private Request $request, private Factory $ui_factory, private \ilLanguage $language, private Services $http, private TableDataProvider $data_provider, private ActionBuilder $action_builder, private ViewControlBuilder $view_control_builder, private UploadBuilder $upload_builder)
 
A simple class to express a range of whole positive numbers. 
 
const BY_CREATION_DATE_DESC
 
ILIAS ResourceStorage Services $irss