ILIAS  release_7 Revision v7.30-3-g800a261c036
class.ilLMImportGUI.php
Go to the documentation of this file.
1<?php
2
3/* Copyright (c) 1998-2015 ILIAS open source, Extended GPL, see docs/LICENSE */
4
13{
17 protected $ctrl;
18
22 protected $lng;
23
27 protected $tpl;
28
29 protected $lm;
30
34 public function __construct($a_lm)
35 {
36 global $DIC;
37
38 $this->ctrl = $DIC->ctrl();
39 $this->lng = $DIC->language();
40 $this->tpl = $DIC["tpl"];
41 $this->lm = $a_lm;
42 }
43
47 public function executeCommand()
48 {
49 $ilCtrl = $this->ctrl;
50
51 $cmd = $ilCtrl->getCmd("showTranslationImportForm");
52
53 if (in_array($cmd, array("showTranslationImportForm", "importTranslation"))) {
54 $this->$cmd();
55 }
56 }
57
64 public function showTranslationImportForm()
65 {
68
69 ilUtil::sendInfo($lng->txt("cont_trans_import_info"));
70 $form = $this->initTranslationImportForm();
71 $tpl->setContent($form->getHTML());
72 }
73
77 public function initTranslationImportForm()
78 {
80 $ilCtrl = $this->ctrl;
81
82 $lng->loadLanguageModule("meta");
83
84 $form = new ilPropertyFormGUI();
85
86 // import file
87 $fi = new ilFileInputGUI($lng->txt("file"), "importfile");
88 $fi->setSuffixes(array("zip"));
89 $fi->setRequired(true);
90 $fi->setSize(30);
91 $form->addItem($fi);
92
93 $ot = ilObjectTranslation::getInstance($this->lm->getId());
94 foreach ($ot->getLanguages() as $l) {
95 if ($l["lang_code"] != $ot->getMasterLanguage()) {
96 $options[$l["lang_code"]] = $lng->txt("meta_l_" . $l["lang_code"]);
97 }
98 }
99 $si = new ilSelectInputGUI($lng->txt("cont_import_lang"), "import_lang");
100 $si->setOptions($options);
101 $form->addItem($si);
102
103 $form->addCommandButton("importTranslation", $lng->txt("import"));
104 $form->setTitle($lng->txt("cont_import_trans"));
105 $form->setFormAction($ilCtrl->getFormAction($this));
106
107 return $form;
108 }
109
113 public function importTranslation()
114 {
115 $ilCtrl = $this->ctrl;
117
118 $imp = new ilImport();
119 $conf = $imp->getConfig("Modules/LearningModule");
120
121 $target_lang = ilUtil::stripSlashes($_POST["import_lang"]);
122 $ot = ilObjectTranslation::getInstance($this->lm->getId());
123 if ($target_lang == $ot->getMasterLanguage() || $target_lang == "") {
124 ilUtil::sendFailure($lng->txt("cont_transl_master_language_not_allowed"), true);
125 $ilCtrl->redirect($this, "showTranslationImportForm");
126 }
127
128 $conf->setTranslationImportMode($this->lm, $target_lang);
129 $imp->importObject(
130 null,
131 $_FILES["importfile"]["tmp_name"],
132 $_FILES["importfile"]["name"],
133 "lm",
134 "Modules/LearningModule"
135 );
136 //echo "h"; exit;
137 ilUtil::sendSuccess($lng->txt("msg_obj_modified"), true);
138 $ilCtrl->redirect($this, "showTranslationImportForm");
139 }
140}
$_POST["username"]
An exception for terminatinating execution or to throw for unit testing.
This class represents a file property in a property form.
Import class.
Import related features for learning modules.
showTranslationImportForm()
Translation import.
importTranslation()
Import translation.
__construct($a_lm)
Constructor.
executeCommand()
Execute command.
initTranslationImportForm()
Init translation input form.
static getInstance($a_obj_id)
Get instance.
This class represents a property form user interface.
This class represents a selection list property in a property form.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
global $DIC
Definition: goto.php:24