ILIAS  release_8 Revision v8.23
ilDclRecordListTableGUI Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Inheritance diagram for ilDclRecordListTableGUI:
+ Collaboration diagram for ilDclRecordListTableGUI:

Public Member Functions

 getFilter ()
 Return array of fields that are currently stored in the filter. More...
 
 setRecordData (array $data)
 
 numericOrdering (string $a_field)
 
 initFilterFromTableView ()
 init filters with values from tableview More...
 
 initFilter ()
 normally initialize filters - used by applyFilter and resetFilter More...
 
 applyFilter ($field_id, $filter_value)
 
 loadProperty (string $type)
 
 exportData (int $format, bool $send=false)
 Exports the table. More...
 
- Public Member Functions inherited from ilTable2GUI
 __construct (?object $a_parent_obj, string $a_parent_cmd="", string $a_template_context="")
 
 setOpenFormTag (bool $a_val)
 
 getOpenFormTag ()
 
 setCloseFormTag (bool $a_val)
 
 getCloseFormTag ()
 
 determineLimit ()
 
 getSelectableColumns ()
 Get selectable columns. More...
 
 determineSelectedColumns ()
 
 isColumnSelected (string $col)
 
 getSelectedColumns ()
 
 resetOffset (bool $a_in_determination=false)
 
 initFilter ()
 
 getParentObject ()
 
 getParentCmd ()
 
 setTopAnchor (string $a_val)
 
 getTopAnchor ()
 
 setNoEntriesText (string $a_text)
 
 getNoEntriesText ()
 
 setIsDataTable (bool $a_val)
 
 getIsDataTable ()
 
 setEnableTitle (bool $a_enabletitle)
 
 getEnableTitle ()
 
 setEnableHeader (bool $a_enableheader)
 
 getEnableHeader ()
 
 setEnableNumInfo (bool $a_val)
 
 getEnableNumInfo ()
 
 setTitle (string $a_title, string $a_icon="", string $a_icon_alt="")
 
 setDescription (string $a_val)
 
 getDescription ()
 
 setOrderField (string $a_order_field)
 
 getOrderField ()
 
 setData (array $a_data)
 
 getData ()
 
 dataExists ()
 
 setPrefix (string $a_prefix)
 
 getPrefix ()
 
 addFilterItem (ilTableFilterItem $a_input_item, bool $a_optional=false)
 
 addFilterItemByMetaType (string $id, int $type=self::FILTER_TEXT, bool $a_optional=false, string $caption="")
 Add filter by standard type. More...
 
 getFilterItems (bool $a_optionals=false)
 
 getFilterItemByPostVar (string $a_post_var)
 
 setFilterCols (int $a_val)
 
 getFilterCols ()
 
 setDisableFilterHiding (bool $a_val=true)
 
 getDisableFilterHiding ()
 
 isFilterSelected (string $a_col)
 Is given filter selected? More...
 
 getSelectedFilters ()
 
 determineSelectedFilters ()
 
 setCustomPreviousNext (string $a_prev_link, string $a_next_link)
 
 setFormAction (string $a_form_action, bool $a_multipart=false)
 
 getFormAction ()
 
 setFormName (string $a_name="")
 
 getFormName ()
 
 setId (string $a_val)
 
 getId ()
 
 setDisplayAsBlock (bool $a_val)
 
 getDisplayAsBlock ()
 
 setSelectAllCheckbox (string $a_select_all_checkbox, bool $a_select_all_on_top=false)
 
 setExternalSorting (bool $a_val)
 
 getExternalSorting ()
 
 setFilterCommand (string $a_val, string $a_caption="")
 
 getFilterCommand ()
 
 setResetCommand (string $a_val, string $a_caption="")
 
 getResetCommand ()
 
 setExternalSegmentation (bool $a_val)
 
 getExternalSegmentation ()
 
 setRowTemplate (string $a_template, string $a_template_dir="")
 Set row template. More...
 
 setDefaultOrderField (string $a_defaultorderfield)
 
 getDefaultOrderField ()
 
 setDefaultOrderDirection (string $a_defaultorderdirection)
 
 getDefaultOrderDirection ()
 
 setDefaultFilterVisiblity (bool $a_status)
 
 getDefaultFilterVisibility ()
 
 clearCommandButtons ()
 
 addCommandButton (string $a_cmd, string $a_text, string $a_onclick='', string $a_id="", string $a_class="")
 
 addCommandButtonInstance (ilButtonBase $a_button)
 
 addMultiItemSelectionButton (string $a_sel_var, array $a_options, string $a_cmd, string $a_text, string $a_default_selection='')
 
 setCloseCommand (string $a_link)
 
 addMultiCommand (string $a_cmd, string $a_text)
 
 addHiddenInput (string $a_name, string $a_value)
 
 addHeaderCommand (string $a_href, string $a_text, string $a_target="", string $a_img="")
 
 setTopCommands (bool $a_val)
 
 getTopCommands ()
 
 addColumn (string $a_text, string $a_sort_field="", string $a_width="", bool $a_is_checkbox_action_column=false, string $a_class="", string $a_tooltip="", bool $a_tooltip_with_html=false)
 
 getNavParameter ()
 
 setOrderLink (string $key, string $order_dir)
 
 fillHeader ()
 
 determineOffsetAndOrder (bool $a_omit_offset=false)
 
 storeNavParameter ()
 
 getHTML ()
 Get HTML. More...
 
 numericOrdering (string $a_field)
 Should this field be sorted numeric? More...
 
 render ()
 
 writeFilterToSession ()
 
 resetFilter ()
 
 fillFooter ()
 
 getLinkbar (string $a_num)
 
 fillHiddenRow ()
 
 fillActionRow ()
 
 setHeaderHTML (string $html)
 
 storeProperty (string $type, string $value)
 
 loadProperty (string $type)
 
 getCurrentState ()
 get current settings for order, limit, columns and filter More...
 
 setContext (string $id)
 
 getContext ()
 
 setShowRowsSelector (bool $a_value)
 Toggle rows-per-page selector. More...
 
 getShowRowsSelector ()
 
 setShowTemplates (bool $a_value)
 
 getShowTemplates ()
 
 restoreTemplate (string $a_name)
 Restore state from template. More...
 
 saveTemplate (string $a_name)
 Save current state as template. More...
 
 deleteTemplate (string $a_name)
 
 getLimit ()
 
 getOffset ()
 
 setExportFormats (array $formats)
 Set available export formats. More...
 
 setPrintMode (bool $a_value=false)
 
 getPrintMode ()
 
 getExportMode ()
 
 exportData (int $format, bool $send=false)
 Export and optionally send current table data. More...
 
 setEnableAllCommand (bool $a_value)
 
 setRowSelectorLabel (string $row_selector_label)
 
 getRowSelectorLabel ()
 
 setPreventDoubleSubmission (bool $a_val)
 
 getPreventDoubleSubmission ()
 
 setLimit (int $a_limit=0, int $a_default_limit=0)
 
- Public Member Functions inherited from ilTableGUI
 __construct (array $a_data=[], bool $a_global_tpl=true)
 
 setTemplate (ilTemplate $a_tpl)
 
 getTemplateObject ()
 
 setData (array $a_data)
 Set table data. More...
 
 getData ()
 
 setTitle (string $a_title, string $a_icon="", string $a_icon_alt="")
 
 setHelp (string $a_help_page, string $a_help_icon, string $a_help_icon_alt="")
 
 setHeaderNames (array $a_header_names)
 
 getColumnCount ()
 
 setHeaderVars (array $a_header_vars, array $a_header_params=[])
 
 setColumnWidth (array $a_column_width)
 set table column widths More...
 
 setOneColumnWidth (string $a_column_width, int $a_column_number)
 
 setMaxCount (int $a_max_count)
 set max. More...
 
 setLimit (int $a_limit=0, int $a_default_limit=0)
 set max. More...
 
 getLimit ()
 
 setPrefix (string $a_prefix)
 set prefix for sort and offset fields (if you have two or more tables on a page that you want to sort separately) More...
 
 setOffset (int $a_offset)
 set dataset offset More...
 
 getOffset ()
 
 setOrderColumn (string $a_order_column="", string $a_default_column="")
 
 getOrderColumn ()
 
 setOrderDirection (string $a_order_direction)
 
 getOrderDirection ()
 
 setFooter (string $a_style, string $a_previous="", string $a_next="")
 
 enable (string $a_module_name)
 
 disable (string $a_module_name)
 
 sortData ()
 
 render ()
 
 renderHeader ()
 
 setOrderLink (string $key, string $order_dir)
 
 setStyle (string $a_element, string $a_style)
 
 getStyle (string $a_element)
 
 setBase (string $a_base)
 
 getBase ()
 
 getFormName ()
 get the name of the parent form More...
 
 setFormName (string $a_name="cmd")
 
 getSelectAllCheckbox ()
 get the name of the checkbox that should be toggled with a select all button More...
 
 setSelectAllCheckbox (string $a_select_all_checkbox)
 
 clearActionButtons ()
 
 addActionButton (string $btn_name, string $btn_value)
 

Data Fields

const EXPORT_EXCEL_ASYNC = 10
 
- Data Fields inherited from ilTable2GUI
const FILTER_TEXT = 1
 
const FILTER_SELECT = 2
 
const FILTER_DATE = 3
 
const FILTER_LANGUAGE = 4
 
const FILTER_NUMBER_RANGE = 5
 
const FILTER_DATE_RANGE = 6
 
const FILTER_DURATION_RANGE = 7
 
const FILTER_DATETIME_RANGE = 8
 
const FILTER_CHECKBOX = 9
 
const EXPORT_EXCEL = 1
 
const EXPORT_CSV = 2
 
const ACTION_ALL_LIMIT = 1000
 
- Data Fields inherited from ilTableGUI
string $title = ""
 
string $icon = ""
 
string $icon_alt = ""
 
string $help_page = ""
 
string $help_icon = ""
 
string $help_icon_alt = ""
 
array $header_names = []
 
array $header_vars = []
 
array $linkbar_vars = []
 
array $data = []
 
int $column_count = 0
 
array $column_width = []
 
int $max_count = 0
 
int $limit = 0
 
bool $max_limit = false
 
int $offset = 0
 
string $order_column = ""
 
string $order_direction = ""
 
string $footer_style = ""
 
string $footer_previous = ""
 
string $footer_next = ""
 
bool $lang_support = true
 
bool $global_tpl = false
 
string $form_name = ""
 
string $select_all_checkbox = ""
 
array $action_buttons = []
 
string $prefix = ""
 
string $base = ""
 
array $enabled
 
array $styles
 

Protected Member Functions

 addActionRowIfNeeded ()
 
 needsActionRow ()
 
 getStatus (ilDclBaseRecordModel $record, ilDclBaseFieldModel $field)
 This adds the column for status. More...
 
 getCommentsAjaxLink (int $recordId)
 Get the ajax link for displaying the comments in the right panel (to be wrapped in an onclick attr) More...
 
- Protected Member Functions inherited from ilTable2GUI
 getRequestedValues ()
 
 prepareOutput ()
 Anything that must be done before HTML is generated. More...
 
 isFilterVisible ()
 Check if filter is visible: manually shown (session, db) or default value set. More...
 
 isAdvMDFilter (ilAdvancedMDRecordGUI $a_gui, ilTableFilterItem $a_element)
 Check if filter element is based on adv md. More...
 
 fillRow (array $a_set)
 Standard Version of Fill Row. More...
 
 getFilterValue (ilTableFilterItem $a_item)
 Get current filter value. More...
 
 setFilterValue (ilTableFilterItem $a_item, $a_value)
 
 fillMetaExcel (ilExcel $a_excel, int &$a_row)
 Add meta information to excel export. More...
 
 fillHeaderExcel (ilExcel $a_excel, int &$a_row)
 Excel Version of Fill Header. More...
 
 fillRowExcel (ilExcel $a_excel, int &$a_row, array $a_set)
 Excel Version of Fill Row. More...
 
 fillMetaCSV (ilCSVWriter $a_csv)
 Add meta information to csv export. More...
 
 fillHeaderCSV (ilCSVWriter $a_csv)
 CSV Version of Fill Header. More...
 
 fillRowCSV (ilCSVWriter $a_csv, array $a_set)
 CSV Version of Fill Row. More...
 

Protected Attributes

object $parent_obj
 
ilDclTable $table
 
ilDclTableView $tableview
 
array $object_data
 
array $numeric_fields = []
 
array $filter = []
 
string $mode
 
int $userId
 
ilCtrl $ctrl
 
ilLanguage $lng
 
- Protected Attributes inherited from ilTable2GUI
string $requested_tmpl_delete
 
string $requested_tmpl_create
 
string $requested_nav_par2 = ""
 
string $requested_nav_par = ""
 
string $requested_nav_par1 = ""
 
ILIAS Table TableGUIRequest $table_request = null
 
array $selected_columns = []
 
ilCtrl $ctrl
 
object $parent_obj = null
 
string $parent_cmd = ""
 
string $close_command = ""
 
string $top_anchor = "il_table_top"
 
array $filters = array()
 
array $optional_filters = array()
 
string $filter_cmd = 'applyFilter'
 
string $reset_cmd = 'resetFilter'
 
int $filter_cols = 5
 
bool $ext_sort = false
 
bool $ext_seg = false
 
string $context = ""
 
array $mi_sel_buttons = []
 
bool $disable_filter_hiding = false
 
bool $top_commands = true
 
array $selectable_columns = array()
 
array $selected_column = array()
 
bool $show_templates = false
 
bool $show_rows_selector = true
 
bool $rows_selector_off = false
 
bool $nav_determined = false
 
bool $limit_determined = false
 
bool $filters_determined = false
 
bool $columns_determined = false
 
bool $open_form_tag = true
 
bool $close_form_tag = true
 
array $export_formats = []
 
int $export_mode = 0
 
bool $print_mode = false
 
bool $enable_command_for_all = false
 
bool $restore_filter = false
 
array $restore_filter_values = []
 
bool $default_filter_visibility = false
 
array $sortable_fields = array()
 
bool $prevent_double_submission = true
 
string $row_selector_label = ""
 
bool $select_all_on_top = false
 
array $sel_buttons = []
 
string $nav_value = ''
 
string $noentriestext = ''
 
string $css_row = ''
 
bool $display_as_block = false
 
string $description = ''
 
string $id = ""
 
bool $custom_prev_next = false
 
string $reset_cmd_txt = ""
 
string $defaultorderfield = ""
 
string $defaultorderdirection = ""
 
array $column = []
 
bool $datatable = false
 
bool $num_info = false
 
bool $form_multipart = false
 
array $row_data = []
 
string $order_field = ""
 
array $selected_filter = []
 
string $form_action = ""
 
string $formname = ""
 
string $sort_order = ""
 
array $buttons = []
 
array $multi = []
 
array $hidden_inputs = []
 
array $header_commands = []
 
string $row_template = ""
 
string $row_template_dir = ""
 
string $filter_cmd_txt = ""
 
string $custom_prev = ""
 
string $custom_next = ""
 
array $raw_post_data = null
 
ilGlobalTemplateInterface $main_tpl
 
- Protected Attributes inherited from ilTableGUI
string $sort_order
 
string $link_params
 
array $header_params
 
 $tpl
 
ilLanguage $lng
 

Private Member Functions

 buildData ()
 Parse data from record objects to an array that is then set to this table with ::setData() More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ilTable2GUI
static getAllCommandLimit ()
 
- Static Public Member Functions inherited from ilTableGUI
static linkbar (string $AScript, int $AHits, int $ALimit, int $AOffset, array $AParams=array(), array $ALayout=array(), string $prefix='')
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning

Definition at line 19 of file class.ilDclRecordListTableGUI.php.

Member Function Documentation

◆ addActionRowIfNeeded()

ilDclRecordListTableGUI::addActionRowIfNeeded ( )
protected

Definition at line 137 of file class.ilDclRecordListTableGUI.php.

References ilTable2GUI\addColumn(), ILIAS\Repository\lng(), and needsActionRow().

Referenced by setRecordData().

137  : void
138  {
139  if ($this->needsActionRow()) {
140  $this->addColumn($this->lng->txt("actions"), "", "30px");
141  }
142  }
addColumn(string $a_text, string $a_sort_field="", string $a_width="", bool $a_is_checkbox_action_column=false, string $a_class="", string $a_tooltip="", bool $a_tooltip_with_html=false)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ applyFilter()

ilDclRecordListTableGUI::applyFilter (   $field_id,
  $filter_value 
)

Definition at line 377 of file class.ilDclRecordListTableGUI.php.

References ILIAS\UI\examples\Symbol\Glyph\Filter\filter().

Referenced by initFilter(), and initFilterFromTableView().

378  {
379  if ($filter_value) {
380  $this->filter["filter_" . $field_id] = $filter_value;
381  }
382  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ buildData()

ilDclRecordListTableGUI::buildData ( )
private

Parse data from record objects to an array that is then set to this table with ::setData()

Definition at line 152 of file class.ilDclRecordListTableGUI.php.

References ilTableGUI\$data, ilTableGUI\$title, ILIAS\Repository\ctrl(), ilTable2GUI\fillRow(), getCommentsAjaxLink(), ilUtil\getImagePath(), getStatus(), ilUtil\img(), ilDclDetailedViewDefinition\isActive(), ILIAS\Repository\lng(), ilDclRecordListGUI\MODE_MANAGE, ilDclBaseFieldModel\PROP_LEARNING_PROGRESS, and ilTable2GUI\setData().

Referenced by setRecordData().

152  : void
153  {
154  $data = [];
155  foreach ($this->object_data as $record) {
156  $record_data = [];
157  $record_data["_front"] = null;
158  $record_data['_record'] = $record;
159 
160  foreach ($this->tableview->getVisibleFields() as $field) {
161  $title = $field->getTitle();
162  $record_data[$title] = $record->getRecordFieldHTML($field->getId(), ['tableview_id' => $this->tableview->getId()]);
163 
164  // Additional column filled in ::fillRow() method, showing the learning progress
165  if ($field->getProperty(ilDclBaseFieldModel::PROP_LEARNING_PROGRESS)) {
166  $record_data["_status_" . $title] = $this->getStatus($record, $field);
167  }
168 
169  if ($field->getId() == 'comments') {
170  $record_data['n_comments'] = $record->getNrOfComments();
171  }
172  }
173 
174  $this->ctrl->setParameterByClass("ildclfieldeditgui", "record_id", $record->getId());
175  $this->ctrl->setParameterByClass(ilDclDetailedViewGUI::class, "table_id", $record->getTableId());
176  $this->ctrl->setParameterByClass("ilDclDetailedViewGUI", "record_id", $record->getId());
177  $this->ctrl->setParameterByClass("ilDclDetailedViewGUI", "tableview_id", $this->tableview->getId());
178  $this->ctrl->setParameterByClass("ildclrecordeditgui", "record_id", $record->getId());
179  $this->ctrl->setParameterByClass("ildclrecordeditgui", "tableview_id", $this->tableview->getId());
180  $this->ctrl->setParameterByClass("ildclrecordeditgui", "mode", $this->mode);
181 
182  if (ilDclDetailedViewDefinition::isActive($this->tableview->getId())) {
183  $record_data["_front"] = $this->ctrl->getLinkTargetByClass("ilDclDetailedViewGUI", 'renderRecord');
184  }
185 
186  $alist = new ilAdvancedSelectionListGUI();
187  $alist->setId($record->getId());
188  $alist->setListTitle($this->lng->txt("actions"));
189 
190  if (ilDclDetailedViewDefinition::isActive($this->tableview->getId())) {
191  $alist->addItem(
192  $this->lng->txt('view'),
193  'view',
194  $this->ctrl->getLinkTargetByClass("ilDclDetailedViewGUI", 'renderRecord')
195  );
196  }
197 
198  if ($record->hasPermissionToEdit($this->parent_obj->getRefId())) {
199  $alist->addItem(
200  $this->lng->txt('edit'),
201  'edit',
202  $this->ctrl->getLinkTargetByClass("ildclrecordeditgui", 'edit')
203  );
204  }
205 
206  if ($record->hasPermissionToDelete($this->parent_obj->getRefId())) {
207  $alist->addItem(
208  $this->lng->txt('delete'),
209  'delete',
210  $this->ctrl->getLinkTargetByClass("ildclrecordeditgui", 'confirmDelete')
211  );
212  }
213 
214  if ($this->table->getPublicCommentsEnabled()) {
215  $alist->addItem(
216  $this->lng->txt('dcl_comments'),
217  'comment',
218  '',
219  '',
220  '',
221  '',
222  '',
223  '',
224  $this->getCommentsAjaxLink($record->getId())
225  );
226  }
227 
228  $record_data["_actions"] = $alist->getHTML();
229  $data[] = $record_data;
230  }
231  $this->setData($data);
232  }
setData(array $a_data)
getStatus(ilDclBaseRecordModel $record, ilDclBaseFieldModel $field)
This adds the column for status.
getCommentsAjaxLink(int $recordId)
Get the ajax link for displaying the comments in the right panel (to be wrapped in an onclick attr) ...
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ exportData()

ilDclRecordListTableGUI::exportData ( int  $format,
bool  $send = false 
)

Exports the table.

Definition at line 417 of file class.ilDclRecordListTableGUI.php.

References $filter, ilTable2GUI\dataExists(), ilDclContentExporter\export(), and ilDclContentExporter\EXPORT_EXCEL.

420  : void {
421  if ($this->dataExists()) {
422  $exporter = new ilDclContentExporter(
423  $this->parent_obj->getRefId(),
424  $this->table->getId(),
426  );
427  $exporter->export(ilDclContentExporter::EXPORT_EXCEL, null, true);
428  }
429  }
export(string $format=self::EXPORT_EXCEL, string $filepath=null, bool $send=false)
Creates an export of a specific data collection table.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ getCommentsAjaxLink()

ilDclRecordListTableGUI::getCommentsAjaxLink ( int  $recordId)
protected

Get the ajax link for displaying the comments in the right panel (to be wrapped in an onclick attr)

Definition at line 400 of file class.ilDclRecordListTableGUI.php.

References ilCommonActionDispatcherGUI\buildAjaxHash(), and ilNoteGUI\getListCommentsJSCall().

Referenced by buildData().

400  : string
401  {
403  1,
404  $this->parent_obj->getRefId(),
405  'dcl',
406  $this->parent_obj->getObjId(),
407  'dcl',
408  $recordId
409  );
410 
411  return ilNoteGUI::getListCommentsJSCall($ajax_hash, '');
412  }
static buildAjaxHash(int $node_type, ?int $node_id, string $obj_type, int $obj_id, string $sub_type=null, int $sub_id=null, int $news_id=0)
Build ajax hash.
static getListCommentsJSCall(string $a_hash, string $a_update_code=null)
Get list comments js call.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getFilter()

ilDclRecordListTableGUI::getFilter ( )

Return array of fields that are currently stored in the filter.

Return empty array if no filtering is required.

Definition at line 125 of file class.ilDclRecordListTableGUI.php.

References $filter.

125  : array
126  {
127  return $this->filter;
128  }

◆ getStatus()

ilDclRecordListTableGUI::getStatus ( ilDclBaseRecordModel  $record,
ilDclBaseFieldModel  $field 
)
protected

This adds the column for status.

Definition at line 310 of file class.ilDclRecordListTableGUI.php.

References ilLPStatusIcons\getInstance(), ilDclCache\getRecordFieldCache(), and ilLPStatusIcons\ICON_VARIANT_LONG.

Referenced by buildData().

310  : string
311  {
312  $record_field = ilDclCache::getRecordFieldCache($record, $field);
313  $return = "";
314  if ($status = $record_field->getStatus()) {
316  $return = $icons->renderIconForStatus($status->status);
317  }
318 
319  return $return;
320  }
static getInstance(int $variant=ilLPStatusIcons::ICON_VARIANT_DEFAULT, ?\ILIAS\UI\Renderer $renderer=null, ?\ILIAS\UI\Factory $factory=null)
static getRecordFieldCache(object $record, object $field)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ initFilter()

ilDclRecordListTableGUI::initFilter ( )

normally initialize filters - used by applyFilter and resetFilter

Definition at line 353 of file class.ilDclRecordListTableGUI.php.

References applyFilter(), and ilDclCache\getFieldRepresentation().

353  : void
354  {
355  foreach ($this->tableview->getFilterableFieldSettings() as $field_set) {
356  $field = $field_set->getFieldObject();
357  $value = ilDclCache::getFieldRepresentation($field)->addFilterInputFieldToTable($this);
358 
359  //Disable filters
360  $filter = end($this->filters);
361  if (!$field_set->isFilterChangeable()) {
362  //always set tableview-filtervalue with disabled fields, so resetFilter won't reset it
363  $value = $field_set->getFilterValue();
364  $filter->setValueByArray($value);
365  $value = $filter->getValue();
366 
367  $filter->setDisabled(true);
368  if ($filter instanceof ilCombinationInputGUI) {
369  $filter->__call('setDisabled', [true]);
370  }
371  }
372 
373  $this->applyFilter($field->getId(), $value);
374  }
375  }
applyFilter($field_id, $filter_value)
static getFieldRepresentation(ilDclBaseFieldModel $field)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ initFilterFromTableView()

ilDclRecordListTableGUI::initFilterFromTableView ( )

init filters with values from tableview

Definition at line 325 of file class.ilDclRecordListTableGUI.php.

References applyFilter(), ILIAS\UI\examples\Symbol\Glyph\Filter\filter(), and ilDclCache\getFieldRepresentation().

325  : void
326  {
327  $this->filters = [];
328  $this->filter = [];
329  foreach ($this->tableview->getFilterableFieldSettings() as $field_set) {
330  $field = $field_set->getFieldObject();
331  ilDclCache::getFieldRepresentation($field)->addFilterInputFieldToTable($this);
332 
333  //set filter values
334  $filter = end($this->filters);
335  $value = $field_set->getFilterValue();
336  $filter->setValueByArray($value);
337  $filter->writeToSession();
338  $this->applyFilter($field->getId(), empty(array_filter($value)) ? null : $filter->getValue());
339 
340  //Disable filters
341  if (!$field_set->isFilterChangeable()) {
342  $filter->setDisabled(true);
343  if ($filter instanceof ilCombinationInputGUI) {
344  $filter->__call('setDisabled', [true]);
345  }
346  }
347  }
348  }
applyFilter($field_id, $filter_value)
static getFieldRepresentation(ilDclBaseFieldModel $field)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ loadProperty()

ilDclRecordListTableGUI::loadProperty ( string  $type)
Parameters
string$type
Returns
string

Definition at line 388 of file class.ilDclRecordListTableGUI.php.

References ilTable2GUI\getId().

388  : string
389  {
390  if ($this->getId() && $this->userId > 0) {
391  $tab_prop = new ilTablePropertiesStorageGUI();
392  return $tab_prop->getProperty($this->getId(), $this->userId, $type);
393  }
394  return "";
395  }
$type
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ needsActionRow()

ilDclRecordListTableGUI::needsActionRow ( )
protected

Definition at line 290 of file class.ilDclRecordListTableGUI.php.

References ilDclDetailedViewDefinition\isActive().

Referenced by addActionRowIfNeeded().

290  : bool
291  {
292  if ($this->table->getPublicCommentsEnabled() ||
293  ilDclDetailedViewDefinition::isActive($this->tableview->getId())) {
294  return true;
295  }
296 
297  foreach ($this->object_data as $record) {
298  if ($record->hasPermissionToEdit($this->parent_obj->getRefId()) ||
299  $record->hasPermissionToDelete($this->parent_obj->getRefId())) {
300  return true;
301  }
302  }
303 
304  return false;
305  }
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ numericOrdering()

ilDclRecordListTableGUI::numericOrdering ( string  $a_field)

Definition at line 144 of file class.ilDclRecordListTableGUI.php.

144  : bool
145  {
146  return in_array($a_field, $this->numeric_fields);
147  }

◆ setRecordData()

ilDclRecordListTableGUI::setRecordData ( array  $data)

Definition at line 130 of file class.ilDclRecordListTableGUI.php.

References ilTableGUI\$data, addActionRowIfNeeded(), and buildData().

130  : void
131  {
132  $this->object_data = $data;
133  $this->buildData();
134  $this->addActionRowIfNeeded();
135  }
buildData()
Parse data from record objects to an array that is then set to this table with ::setData() ...
+ Here is the call graph for this function:

Field Documentation

◆ $ctrl

ilCtrl ilDclRecordListTableGUI::$ctrl
protected

Definition at line 34 of file class.ilDclRecordListTableGUI.php.

◆ $filter

array ilDclRecordListTableGUI::$filter = []
protected

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

Referenced by exportData(), and getFilter().

◆ $lng

ilLanguage ilDclRecordListTableGUI::$lng
protected

Definition at line 35 of file class.ilDclRecordListTableGUI.php.

◆ $mode

string ilDclRecordListTableGUI::$mode
protected

Definition at line 32 of file class.ilDclRecordListTableGUI.php.

◆ $numeric_fields

array ilDclRecordListTableGUI::$numeric_fields = []
protected

Definition at line 30 of file class.ilDclRecordListTableGUI.php.

◆ $object_data

array ilDclRecordListTableGUI::$object_data
protected

Definition at line 29 of file class.ilDclRecordListTableGUI.php.

◆ $parent_obj

object ilDclRecordListTableGUI::$parent_obj
protected

Definition at line 23 of file class.ilDclRecordListTableGUI.php.

◆ $table

ilDclTable ilDclRecordListTableGUI::$table
protected

Definition at line 24 of file class.ilDclRecordListTableGUI.php.

◆ $tableview

ilDclTableView ilDclRecordListTableGUI::$tableview
protected

Definition at line 25 of file class.ilDclRecordListTableGUI.php.

◆ $userId

int ilDclRecordListTableGUI::$userId
protected

Definition at line 33 of file class.ilDclRecordListTableGUI.php.

◆ EXPORT_EXCEL_ASYNC

const ilDclRecordListTableGUI::EXPORT_EXCEL_ASYNC = 10

Definition at line 21 of file class.ilDclRecordListTableGUI.php.


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