ILIAS  trunk Revision v11.0_alpha-1851-ga8564da6fed
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
ilAdvancedMDRecordTranslationGUI Class Reference

Class ilAdvancedMDRecordTranslationGUI ilAdvancedMDRecordTranslationGUI: ilAdvancedMDSettingsGUI. More...

+ Inheritance diagram for ilAdvancedMDRecordTranslationGUI:
+ Collaboration diagram for ilAdvancedMDRecordTranslationGUI:

Protected Member Functions

 translations ()
 
 saveTranslations ()
 
- Protected Member Functions inherited from ilAdvancedMDTranslationGUI
 setTabs (string $active_tab)
 
 translations ()
 
 addTranslations (?ilPropertyFormGUI $form=null)
 show translation creation form More...
 
 initCreateTranslationForm ()
 
 getAvailableLanguagesOptions ()
 
 saveAdditionalTranslations ()
 

Additional Inherited Members

- Public Member Functions inherited from ilAdvancedMDTranslationGUI
 __construct (ilAdvancedMDRecord $record)
 
 executeCommand ()
 Execute command and save parameter record id. More...
 
- Protected Attributes inherited from ilAdvancedMDTranslationGUI
const CMD_DEFAULT = 'translations'
 
const CMD_ADD_TRANSLATION = 'addTranslations'
 
const CMD_SAVE_ADDITIONAL_TRANSLATIONS = 'saveAdditionalTranslations'
 
ilCtrl $ctrl
 
ilGlobalTemplateInterface $tpl
 
ilToolbarGUI $toolbar
 
ilTabsGUI $tabs
 
ilLanguage $language
 
RequestInterface $request
 
ilLogger $logger
 
ilAdvancedMDRecord $record
 

Detailed Description

Member Function Documentation

◆ saveTranslations()

ilAdvancedMDRecordTranslationGUI::saveTranslations ( )
protected
Todo:
use kindlyTo for input parameters

Definition at line 46 of file class.ilAdvancedMDRecordTranslationGUI.php.

References ILIAS\Repository\ctrl(), ilAdvancedMDRecordTranslations\getInstanceByRecordId(), and ILIAS\UI\examples\Symbol\Glyph\Language\language().

46  : void
47  {
48  $languages = (array) ($this->request->getParsedBody()['active_languages'] ?? []);
49  $default = (string) $this->request->getParsedBody()['default'];
50 
51  if (!in_array($default, $languages)) {
52  $this->tpl->setOnScreenMessage('failure', $this->language->txt('err_check_input'), true);
53  $this->tpl->setOnScreenMessage('info', $this->language->txt('md_adn_int_error_no_default'), true);
54  $this->ctrl->redirect($this, self::CMD_DEFAULT);
55  }
56 
57  $translations = ilAdvancedMDRecordTranslations::getInstanceByRecordId($this->record->getRecordId());
58  foreach ($translations->getTranslations() as $translation) {
59  if (!in_array($translation->getLangKey(), $languages)) {
60  $translation->delete();
61  }
62  }
63  foreach ($languages as $lang_key) {
64  if (!$translations->isConfigured($lang_key)) {
65  $translations->addTranslationEntry($lang_key);
66  }
67  }
68 
69  $this->record->setDefaultLanguage($default);
70  $this->record->update();
71 
72  $this->tpl->setOnScreenMessage('success', $this->language->txt('settings_saved'), true);
73  $this->ctrl->redirect($this, self::CMD_DEFAULT);
74  }
language()
description: > Example for rendring a language glyph.
Definition: language.php:41
+ Here is the call graph for this function:

◆ translations()

ilAdvancedMDRecordTranslationGUI::translations ( )
protected

Definition at line 28 of file class.ilAdvancedMDRecordTranslationGUI.php.

References ilAdvancedMDTranslationGUI\setTabs().

28  : void
29  {
30  $this->setTabs(self::CMD_DEFAULT);
31 
32  $language_table = new ilAdvancedMDRecordLanguageTableGUI(
33  $this->record,
34  $this,
35  self::CMD_DEFAULT
36  );
37  $language_table->init();
38  $language_table->parse();
39 
40  $this->tpl->setContent($language_table->getHTML());
41  }
+ Here is the call graph for this function:

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