From c33d2dff89425da45a9c30b304503dd95d38c13e Mon Sep 17 00:00:00 2001 From: iszmais Date: Fri, 28 Jun 2024 16:50:12 +0200 Subject: [PATCH] Remove legacy table from DC Tables --- .../classes/Table/class.ilDclTableEditGUI.php | 56 +++- .../classes/Table/class.ilDclTableListGUI.php | 128 +++++++-- .../Table/class.ilDclTableListTableGUI.php | 257 ------------------ .../classes/class.ilObjDataCollection.php | 14 +- .../classes/class.ilObjDataCollectionGUI.php | 2 +- .../templates/default/tpl.table_list_row.html | 29 -- lang/ilias_de.lang | 7 +- lang/ilias_en.lang | 7 +- 8 files changed, 178 insertions(+), 322 deletions(-) delete mode 100755 components/ILIAS/DataCollection/classes/Table/class.ilDclTableListTableGUI.php delete mode 100755 components/ILIAS/DataCollection/templates/default/tpl.table_list_row.html diff --git a/components/ILIAS/DataCollection/classes/Table/class.ilDclTableEditGUI.php b/components/ILIAS/DataCollection/classes/Table/class.ilDclTableEditGUI.php index 022fbbaff7e5..1d3e60d2655d 100755 --- a/components/ILIAS/DataCollection/classes/Table/class.ilDclTableEditGUI.php +++ b/components/ILIAS/DataCollection/classes/Table/class.ilDclTableEditGUI.php @@ -317,15 +317,15 @@ public function save(string $a_mode = "create"): void $delete_by_owner = ($this->form->getInput('delete_perm_mode') == 'own'); $this->table->setDeleteByOwner($delete_by_owner); } - $this->table->setViewOwnRecordsPerm((bool)$this->form->getInput('view_own_records_perm')); - $this->table->setExportEnabled((bool)$this->form->getInput("export_enabled")); - $this->table->setImportEnabled((bool)$this->form->getInput("import_enabled")); + $this->table->setViewOwnRecordsPerm((bool) $this->form->getInput('view_own_records_perm')); + $this->table->setExportEnabled((bool) $this->form->getInput("export_enabled")); + $this->table->setImportEnabled((bool) $this->form->getInput("import_enabled")); $this->table->setDefaultSortField($this->form->getInput("default_sort_field")); $this->table->setDefaultSortFieldOrder($this->form->getInput("default_sort_field_order")); - $this->table->setLimited((bool)$this->form->getInput("limited")); + $this->table->setLimited((bool) $this->form->getInput("limited")); $this->table->setDescription($this->form->getInput('description')); - $this->table->setLimitStart((string)$this->form->getInput("limit_start")); - $this->table->setLimitEnd((string)$this->form->getInput("limit_end")); + $this->table->setLimitStart((string) $this->form->getInput("limit_start")); + $this->table->setLimitEnd((string) $this->form->getInput("limit_end")); if ($a_mode == "update") { $this->table->doUpdate(); $this->tpl->setOnScreenMessage('success', $this->lng->txt("dcl_msg_table_edited"), true); @@ -408,6 +408,50 @@ public function delete(): void $this->ctrl->redirectByClass("ildcltablelistgui", "listtables"); } + public function enableVisible(): void + { + $this->table->setIsVisible(true); + $this->table->doUpdate(); + $this->ctrl->redirectByClass(ilDclTableListGUI::class, 'listTables'); + } + + public function disableVisible(): void + { + $this->table->setIsVisible(false); + $this->table->doUpdate(); + $this->ctrl->redirectByClass(ilDclTableListGUI::class, 'listTables'); + } + + public function enableComments(): void + { + $this->table->setPublicCommentsEnabled(true); + $this->table->doUpdate(); + $this->ctrl->redirectByClass(ilDclTableListGUI::class, 'listTables'); + } + + public function disableComments(): void + { + $this->table->setPublicCommentsEnabled(false); + $this->table->doUpdate(); + $this->ctrl->redirectByClass(ilDclTableListGUI::class, 'listTables'); + } + + public function setAsDefault(): void + { + $object = ilObjectFactory::getInstanceByObjId($this->obj_id); + $order = 20; + foreach ($object->getTables() as $table) { + if ($table->getId() === $this->table->getId()) { + $table->setOrder(10); + } else { + $table->setOrder($order); + $order += 10; + } + $table->doUpdate(); + } + $this->ctrl->redirectByClass(ilDclTableListGUI::class, 'listTables'); + } + protected function checkAccess(): bool { $ref_id = $this->parent_object->getDataCollectionObject()->getRefId(); diff --git a/components/ILIAS/DataCollection/classes/Table/class.ilDclTableListGUI.php b/components/ILIAS/DataCollection/classes/Table/class.ilDclTableListGUI.php index 7d11926a26ce..4a34f01b8406 100755 --- a/components/ILIAS/DataCollection/classes/Table/class.ilDclTableListGUI.php +++ b/components/ILIAS/DataCollection/classes/Table/class.ilDclTableListGUI.php @@ -18,6 +18,8 @@ declare(strict_types=1); +use ILIAS\UI\Component\Button\Shy; + /** * @ilCtrl_Calls ilDclTableListGUI: ilDclFieldListGUI, ilDclFieldEditGUI, ilDclTableViewGUI, ilDclTableEditGUI */ @@ -33,12 +35,7 @@ class ilDclTableListGUI protected ILIAS\HTTP\Services $http; protected ILIAS\Refinery\Factory $refinery; protected ilObjDataCollectionGUI $parent_obj; - protected int $obj_id; - /** - * ilDclTableListGUI constructor. - * @param ilObjDataCollectionGUI $a_parent_obj - */ public function __construct(ilObjDataCollectionGUI $a_parent_obj) { global $DIC; @@ -54,12 +51,6 @@ public function __construct(ilObjDataCollectionGUI $a_parent_obj) $this->renderer = $DIC->ui()->renderer(); $this->parent_obj = $a_parent_obj; - $this->obj_id = 0; - if ($a_parent_obj->getRefId() >= 0) { - $this->obj_id = ilObject::_lookupObjectId($a_parent_obj->getRefId()); - } - - if (!$this->checkAccess()) { $main_tpl->setOnScreenMessage('failure', $this->lng->txt('permission_denied'), true); @@ -87,25 +78,21 @@ public function executeCommand(): void $next_class = $this->ctrl->getNextClass($this); - /* - * see https://www.ilias.de/mantis/view.php?id=22775 - */ $ref_id = $this->http->wrapper()->query()->retrieve('ref_id', $this->refinery->kindlyTo()->int()); $tableHelper = new ilDclTableHelper( - $this->obj_id, + $this->getObjId(), $ref_id, $DIC->rbac()->review(), $DIC->user(), $DIC->database() ); - // send a warning if there are roles with rbac read access on the data collection but without read access on any standard view $role_titles = $tableHelper->getRoleTitlesWithoutReadRightOnAnyStandardView(); if (count($role_titles) > 0) { $this->tpl->setOnScreenMessage( 'info', - $DIC->language()->txt('dcl_rbac_roles_without_read_access_on_any_standard_view') . " " . implode( + $this->lng->txt('dcl_rbac_roles_without_read_access_on_any_standard_view') . " " . implode( ", ", $role_titles ) @@ -162,8 +149,109 @@ public function listTables(): void ); $this->toolbar->addStickyItem($add_new); - $table_gui = new ilDclTableListTableGUI($this); - $this->tpl->setContent($table_gui->getHTML()); + $this->tpl->setContent( + $this->renderer->render( + $this->ui_factory->panel()->listing()->standard( + $this->lng->txt('dcl_tables'), + [$this->ui_factory->item()->group('', $this->getItems())] + ) + ) + ); + } + + protected function getItems(): array + { + $items = []; + foreach ($this->parent_obj->getDataCollectionObject()->getTables() as $table) { + + $this->ctrl->setParameterByClass(ilObjDataCollectionGUI::class, 'table_id', $table->getId()); + $checked = $this->ui_factory->symbol()->icon()->custom(ilUtil::getImagePath('standard/icon_checked.svg'), ''); + $unchecked = $this->ui_factory->symbol()->icon()->custom(ilUtil::getImagePath('standard/icon_unchecked.svg'), ''); + $item = $this->ui_factory->item()->standard( + $this->ui_factory->link()->standard( + $table->getTitle(), + $this->ctrl->getLinkTargetByClass(ilDclFieldListGUI::class, 'listFields') + ) + ) + ->withProperties([ + $this->lng->txt('visible') => $table->getIsVisible() ? $checked : $unchecked, + $this->lng->txt('comments') => $table->getPublicCommentsEnabled() ? $checked : $unchecked + ]) + ->withActions( + $this->ui_factory->dropdown()->standard( + $this->getActions($table) + ) + ); + + if ($table->getOrder() === 10) { + $item = $item->withDescription($this->lng->txt('default')); + } + $items[] = $item; + } + return $items; + } + + + /** + * @return Shy[] + */ + protected function getActions(ilDclTable $table): array + { + $this->ctrl->setParameterByClass(ilObjDataCollectionGUI::class, 'table_id', $table->getId()); + + $actions = []; + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('settings'), + $this->ctrl->getLinkTargetByClass(ilDclTableEditGUI::class, 'edit'), + ); + + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('dcl_list_fields'), + $this->ctrl->getLinkTargetByClass(ilDclFieldListGUI::class, 'listFields') + ); + + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('dcl_tableviews'), + $this->ctrl->getLinkTargetByClass(ilDclFieldListGUI::class, 'show') + ); + + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('delete'), + $this->ctrl->getLinkTargetByClass(ilDclFieldListGUI::class, 'confirmDelete') + ); + + if ($table->getIsVisible()) { + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('disable_visible'), + $this->ctrl->getLinkTargetByClass(ilDclTableEditGUI::class, 'disableVisible') + ); + } else { + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('enable_visible'), + $this->ctrl->getLinkTargetByClass(ilDclTableEditGUI::class, 'enableVisible') + ); + } + + if ($table->getPublicCommentsEnabled()) { + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('disable_comments'), + $this->ctrl->getLinkTargetByClass(ilDclTableEditGUI::class, 'disableComments') + ); + } else { + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('enable_comments'), + $this->ctrl->getLinkTargetByClass(ilDclTableEditGUI::class, 'enableComments') + ); + } + + if ($table->getOrder() !== 10) { + $actions[] = $this->ui_factory->button()->shy( + $this->lng->txt('set_as_default'), + $this->ctrl->getLinkTargetByClass(ilDclTableEditGUI::class, 'setAsDefault') + ); + } + + return $actions; } protected function setTabs(string $active): void @@ -239,7 +327,7 @@ public function confirmDeleteTables(): void $conf->setHeaderText($this->lng->txt('dcl_tables_confirm_delete')); foreach ($tables as $table_id) { - $conf->addItem('dcl_table_ids[]', (string)$table_id, ilDclCache::getTableCache($table_id)->getTitle()); + $conf->addItem('dcl_table_ids[]', (string) $table_id, ilDclCache::getTableCache($table_id)->getTitle()); } $conf->setConfirm($this->lng->txt('delete'), 'deleteTables'); $conf->setCancel($this->lng->txt('cancel'), 'listTables'); diff --git a/components/ILIAS/DataCollection/classes/Table/class.ilDclTableListTableGUI.php b/components/ILIAS/DataCollection/classes/Table/class.ilDclTableListTableGUI.php deleted file mode 100755 index 4c66e9e0de6d..000000000000 --- a/components/ILIAS/DataCollection/classes/Table/class.ilDclTableListTableGUI.php +++ /dev/null @@ -1,257 +0,0 @@ -ui_factory = $DIC->ui()->factory(); - $this->renderer = $DIC->ui()->renderer(); - - parent::__construct($parent_obj); - - $this->parent_obj = $parent_obj; - - $this->setId('dcl_table_list'); - $this->addColumn('', '', '1', true); - $this->addColumn($this->lng->txt('dcl_order'), "", '30px'); - $this->addColumn($this->lng->txt('title'), "", 'auto'); - $this->addColumn($this->lng->txt('dcl_visible'), "", '250px', false, '', $this->lng->txt('dcl_visible_desc')); - $this->addColumn( - $this->lng->txt('dcl_comments'), - "", - '200px', - false, - '', - $this->lng->txt('dcl_public_comments_desc') - ); - $this->addColumn($this->lng->txt('actions'), "", ''); - - $this->setSelectAllCheckbox('dcl_table_ids[]'); - $this->addMultiCommand('confirmDeleteTables', $this->lng->txt('dcl_delete_tables')); - - $this->setFormAction($this->ctrl->getFormActionByClass(ilDclTableListGUI::class)); - $this->addCommandButton('save', $this->lng->txt('dcl_save')); - - $this->setFormAction($this->ctrl->getFormAction($parent_obj)); - $this->setFormName('table_list'); - - //those two are important as we get our data as objects not as arrays. - $this->setExternalSegmentation(true); - $this->setExternalSorting(true); - - $this->setTopCommands(true); - $this->setEnableHeader(true); - $this->setShowRowsSelector(false); - $this->setShowTemplates(false); - $this->setEnableHeader(true); - $this->setEnableTitle(true); - $this->setTitle($this->lng->txt('dcl_table_list_tables')); - $this->setDefaultOrderDirection('asc'); - - $this->setRowTemplate('tpl.table_list_row.html', 'components/ILIAS/DataCollection'); - $this->setStyle('table', $this->getStyle('table') . ' ' . 'dcl_record_list'); - - $tables = $this->parent_obj->getDataCollectionObject()->getTables(); - $this->setData($tables); - } - - /** - * Get HTML - */ - public function getHTML(): string - { - if ($this->getExportMode()) { - $this->exportData($this->getExportMode(), true); - } - - $this->prepareOutput(); - - if (is_object($this->getParentObject()) && $this->getId() == "") { - $this->ctrl->saveParameter($this->getParentObject(), $this->getNavParameter()); - } - - if (!$this->getPrintMode()) { - // set form action - if ($this->form_action != "" && $this->getOpenFormTag()) { - $hash = ""; - - if ($this->form_multipart) { - $this->tpl->touchBlock("form_multipart_bl"); - } - - if ($this->getPreventDoubleSubmission()) { - $this->tpl->touchBlock("pdfs"); - } - - $this->tpl->setCurrentBlock("tbl_form_header"); - $this->tpl->setVariable("FORMACTION", $this->getFormAction() . $hash); - $this->tpl->setVariable("FORMNAME", $this->getFormName()); - $this->tpl->parseCurrentBlock(); - } - - if ($this->form_action != "" && $this->getCloseFormTag()) { - $this->tpl->touchBlock("tbl_form_footer"); - } - } - - if (!$this->enabled['content']) { - return $this->render(); - } - - if (!$this->getExternalSegmentation()) { - $this->setMaxCount(count($this->row_data)); - } - - $this->determineOffsetAndOrder(); - - $this->setFooter("tblfooter", $this->lng->txt("previous"), $this->lng->txt("next")); - - $data = $this->getData(); - if ($this->dataExists()) { - // sort - if (!$this->getExternalSorting() && $this->enabled["sort"]) { - $data = ilArrayUtil::sortArray( - $data, - $this->getOrderField(), - $this->getOrderDirection(), - $this->numericOrdering($this->getOrderField()) - ); - } - - // slice - if (!$this->getExternalSegmentation()) { - $data = array_slice($data, $this->getOffset(), $this->getLimit()); - } - } - - // fill rows - if ($this->dataExists()) { - if ($this->getPrintMode()) { - ilDatePresentation::setUseRelativeDates(false); - } - - $this->tpl->addBlockFile( - "TBL_CONTENT", - "tbl_content", - $this->row_template, - $this->row_template_dir - ); - - foreach ($data as $set) { - $this->tpl->setCurrentBlock("tbl_content"); - $this->css_row = ($this->css_row !== "tblrow1") - ? "tblrow1" - : "tblrow2"; - $this->tpl->setVariable("CSS_ROW", $this->css_row); - - $this->fillRowFromObject($set); - $this->tpl->setCurrentBlock("tbl_content"); - $this->tpl->parseCurrentBlock(); - } - } else { - // add standard no items text (please tell me, if it messes something up, alex, 29.8.2008) - $no_items_text = (trim($this->getNoEntriesText()) != '') - ? $this->getNoEntriesText() - : $this->lng->txt("no_items"); - - $this->css_row = ($this->css_row !== "tblrow1") - ? "tblrow1" - : "tblrow2"; - - $this->tpl->setCurrentBlock("tbl_no_entries"); - $this->tpl->setVariable('TBL_NO_ENTRY_CSS_ROW', $this->css_row); - $this->tpl->setVariable('TBL_NO_ENTRY_COLUMN_COUNT', $this->column_count); - $this->tpl->setVariable('TBL_NO_ENTRY_TEXT', trim($no_items_text)); - $this->tpl->parseCurrentBlock(); - } - - if (!$this->getPrintMode()) { - $this->fillFooter(); - - $this->fillHiddenRow(); - - $this->fillActionRow(); - - $this->storeNavParameter(); - } - - return $this->render(); - } - - public function fillRowFromObject(ilDclTable $a_set): void - { - $this->tpl->setVariable("ID", $a_set->getId()); - $this->tpl->setVariable("ORDER_NAME", "order[{$a_set->getId()}]"); - $this->tpl->setVariable("ORDER_VALUE", $a_set->getOrder()); - $this->tpl->setVariable("TITLE", $a_set->getTitle()); - - $this->ctrl->setParameterByClass(ilDclFieldListGUI::class, 'table_id', $a_set->getId()); - $this->tpl->setVariable("TITLE_LINK", $this->ctrl->getLinkTargetByClass(ilDclFieldListGUI::class)); - - $this->tpl->setVariable("CHECKBOX_NAME_VISIBLE", 'visible[' . $a_set->getId() . ']'); - if ($a_set->getIsVisible()) { - $this->tpl->setVariable("CHECKBOX_CHECKED_VISIBLE", 'checked'); - } - $this->tpl->setVariable("CHECKBOX_NAME_COMMENTS", 'comments[' . $a_set->getId() . ']'); - if ($a_set->getPublicCommentsEnabled()) { - $this->tpl->setVariable("CHECKBOX_CHECKED_COMMENTS", 'checked'); - } - $this->tpl->setVariable('ACTIONS', $this->buildActions($a_set->getId())); - } - - protected function buildActions(int $id): string - { - $dropdown_items = []; - - $this->ctrl->setParameterByClass(ilDclFieldListGUI::class, 'table_id', $id); - $this->ctrl->setParameterByClass(ilDclTableViewGUI::class, 'table_id', $id); - $this->ctrl->setParameterByClass(ilDclTableEditGUI::class, 'table_id', $id); - - $dropdown_items[] = $this->ui_factory->link()->standard( - $this->lng->txt('settings'), - $this->ctrl->getLinkTargetByClass(ilDclTableEditGUI::class, 'edit') - ); - $dropdown_items[] = $this->ui_factory->link()->standard( - $this->lng->txt('dcl_list_fields'), - $this->ctrl->getLinkTargetByClass(ilDclFieldListGUI::class, 'listFields') - ); - $dropdown_items[] = $this->ui_factory->link()->standard( - $this->lng->txt('dcl_tableviews'), - $this->ctrl->getLinkTargetByClass(ilDclTableViewGUI::class) - ); - $dropdown_items[] = $this->ui_factory->link()->standard( - $this->lng->txt('delete'), - $this->ctrl->getLinkTargetByClass(ilDclTableEditGUI::class, 'confirmDelete') - ); - - $dropdown = $this->ui_factory->dropdown()->standard($dropdown_items)->withLabel($this->lng->txt('actions')); - - return $this->renderer->render($dropdown); - } -} diff --git a/components/ILIAS/DataCollection/classes/class.ilObjDataCollection.php b/components/ILIAS/DataCollection/classes/class.ilObjDataCollection.php index fb63cb5aaf68..b88baa72c62c 100755 --- a/components/ILIAS/DataCollection/classes/class.ilObjDataCollection.php +++ b/components/ILIAS/DataCollection/classes/class.ilObjDataCollection.php @@ -38,11 +38,11 @@ protected function doRead(): void $data = $this->db->fetchObject($result); if ($data) { - $this->setOnline((bool)$data->is_online); - $this->setRating((bool)$data->rating); - $this->setApproval((bool)$data->approval); - $this->setPublicNotes((bool)$data->public_notes); - $this->setNotification((bool)$data->notification); + $this->setOnline((bool) $data->is_online); + $this->setRating((bool) $data->rating); + $this->setApproval((bool) $data->approval); + $this->setPublicNotes((bool) $data->public_notes); + $this->setNotification((bool) $data->notification); } } @@ -174,7 +174,7 @@ public function sendNotification($a_action, $a_table_id, $a_record_id = null): v $value = null; if ($field->isStandardField()) { $value = $record->getStandardFieldPlainText($field->getId()); - } elseif ($record_field = $record->getRecordField((int)$field->getId())) { + } elseif ($record_field = $record->getRecordField((int) $field->getId())) { $value = $record_field->getPlainText(); } @@ -377,7 +377,7 @@ public static function _hasReadAccess(int $ref): bool public function getTables(): array { $query = "SELECT id FROM il_dcl_table WHERE obj_id = " . $this->db->quote($this->getId(), "integer") . - " ORDER BY -table_order DESC"; + " ORDER BY title ASC"; $set = $this->db->query($query); $tables = []; diff --git a/components/ILIAS/DataCollection/classes/class.ilObjDataCollectionGUI.php b/components/ILIAS/DataCollection/classes/class.ilObjDataCollectionGUI.php index e0914c0caa59..25dc19b56d38 100755 --- a/components/ILIAS/DataCollection/classes/class.ilObjDataCollectionGUI.php +++ b/components/ILIAS/DataCollection/classes/class.ilObjDataCollectionGUI.php @@ -264,7 +264,7 @@ protected function handleExport(bool $do_default = false) $this->tabs->setTabActive(self::TAB_EXPORT); $exp_gui = new ilDclExportGUI($this); $exporter = new ilDclContentExporter($this->object->getRefId(), $this->table_id); - $exp_gui->addFormat("xlsx", $this->lng->txt('dlc_xls_async_export'), $exporter, 'exportAsync'); + $exp_gui->addFormat("xlsx", $this->lng->txt('dcl_xls_async_export'), $exporter, 'exportAsync'); $exp_gui->addFormat("xml"); if ($do_default) { $exp_gui->listExportFiles(); diff --git a/components/ILIAS/DataCollection/templates/default/tpl.table_list_row.html b/components/ILIAS/DataCollection/templates/default/tpl.table_list_row.html deleted file mode 100755 index 41f4e7105318..000000000000 --- a/components/ILIAS/DataCollection/templates/default/tpl.table_list_row.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - {TITLE} - - - - - - - - - - - - - - - {ACTIONS} - - \ No newline at end of file diff --git a/lang/ilias_de.lang b/lang/ilias_de.lang index 0bbeb398527f..11c9e78e7761 100755 --- a/lang/ilias_de.lang +++ b/lang/ilias_de.lang @@ -8823,10 +8823,15 @@ dcl#:#dcl_width#:#Breite dcl#:#dcl_wrong_input_type#:#Der eingegebene Text passt nicht zum Typ dieses Feldes (falscher Typ). dcl#:#dcl_wrong_length#:#Der eingegebene Text ist zu lang. dcl#:#dcl_wrong_regex#:#Der eingegebene Text passt nicht zur Spezifikation dieses Feldes (regulärer Ausdruck). -dcl#:#dlc_xls_async_export#:#Asynchroner XLSX-Export +dcl#:#dcl_xls_async_export#:#Asynchroner XLSX-Export +dcl#:#disable_comments#:#Kommentare deaktivieren +dcl#:#disable_visible#:#Sichtbarkeit deaktivieren +dcl#:#enable_comments#:#Kommentare aktivieren +dcl#:#enable_visible#:#Sichtbarkeit aktivieren dcl#:#entry_of#:#Eintrag %1$d von %2$d dcl#:#fieldtitle_allow_chars#:#Nicht Erlaubte Zeichen: %s dcl#:#fileupload_not_migrated#:#Die Datei wurde noch nicht migriert und kann deshalb nicht angezeigt werden. Bitte wenden Sie sich an Ihre Systemadministration. +dcl#:#set_as_default#:#Als Standard setzen didactic#:#activate_exclusive_template#:#Standard ausgrauen didactic#:#activate_exclusive_template_info#:#Die Standard-Vorlage wird überall dort ausgegraut, wo diese didaktische Vorlage aktiv ist. didactic#:#activate_local_didactic_template#:#Gültigkeitsbereich diff --git a/lang/ilias_en.lang b/lang/ilias_en.lang index 19c4d1881fc4..a378eab6663e 100755 --- a/lang/ilias_en.lang +++ b/lang/ilias_en.lang @@ -8817,10 +8817,15 @@ dcl#:#dcl_width#:#Width dcl#:#dcl_wrong_input_type#:#The value you entered does not match the specification (Wrong Type). dcl#:#dcl_wrong_length#:#The text you entered is to long. dcl#:#dcl_wrong_regex#:#The text you entered does not match the specification for this field (Regular Expression). -dcl#:#dlc_xls_async_export#:#Asynchronous XLSX-Export +dcl#:#dcl_xls_async_export#:#Asynchronous XLSX-Export +dcl#:#disable_comments#:#Disable comments +dcl#:#disable_visible#:#Disable visible +dcl#:#enable_comments#:#Enable comments +dcl#:#enable_visible#:#Enable visible dcl#:#entry_of#:#Entry %1$d of %2$d dcl#:#fieldtitle_allow_chars#:#Not allowed chars: %s dcl#:#fileupload_not_migrated#:#File has not yet been migration and cannot be displayed. Please contact your System-Administrator. +dcl#:#set_as_default#:#Set as default didactic#:#activate_exclusive_template#:#Grey Out Default didactic#:#activate_exclusive_template_info#:#The standard template won't be available wherever this template is active. didactic#:#activate_local_didactic_template#:#Scope of Application