ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
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  {
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  {
66  $lng = $this->lng;
67  $tpl = $this->tpl;
68 
69  ilUtil::sendInfo($lng->txt("cont_trans_import_info"));
71  $tpl->setContent($form->getHTML());
72  }
73 
77  public function initTranslationImportForm()
78  {
79  $lng = $this->lng;
81 
82  $lng->loadLanguageModule("meta");
83 
84  include_once("Services/Form/classes/class.ilPropertyFormGUI.php");
85  $form = new ilPropertyFormGUI();
86 
87  // import file
88  $fi = new ilFileInputGUI($lng->txt("file"), "importfile");
89  $fi->setSuffixes(array("zip"));
90  $fi->setRequired(true);
91  $fi->setSize(30);
92  $form->addItem($fi);
93 
94  include_once("./Services/MetaData/classes/class.ilMDLanguageItem.php");
95  include_once("./Services/Object/classes/class.ilObjectTranslation.php");
96  $ot = ilObjectTranslation::getInstance($this->lm->getId());
97  foreach ($ot->getLanguages() as $l) {
98  if ($l["lang_code"] != $ot->getMasterLanguage()) {
99  $options[$l["lang_code"]] = $lng->txt("meta_l_" . $l["lang_code"]);
100  }
101  }
102  $si = new ilSelectInputGUI($lng->txt("cont_import_lang"), "import_lang");
103  $si->setOptions($options);
104  $form->addItem($si);
105 
106  $form->addCommandButton("importTranslation", $lng->txt("import"));
107  $form->setTitle($lng->txt("cont_import_trans"));
108  $form->setFormAction($ilCtrl->getFormAction($this));
109 
110  return $form;
111  }
112 
116  public function importTranslation()
117  {
119  $lng = $this->lng;
120 
121  include_once("./Services/Export/classes/class.ilImport.php");
122  $imp = new ilImport();
123  $conf = $imp->getConfig("Modules/LearningModule");
124 
125  $target_lang = ilUtil::stripSlashes($_POST["import_lang"]);
126  include_once("./Services/Object/classes/class.ilObjectTranslation.php");
127  $ot = ilObjectTranslation::getInstance($this->lm->getId());
128  if ($target_lang == $ot->getMasterLanguage() || $target_lang == "") {
129  ilUtil::sendFailure($lng->txt("cont_transl_master_language_not_allowed"), true);
130  $ilCtrl->redirect($this, "showTranslationImportForm");
131  }
132 
133  $conf->setTranslationImportMode($this->lm, $target_lang);
134  $imp->importObject(
135  null,
136  $_FILES["importfile"]["tmp_name"],
137  $_FILES["importfile"]["name"],
138  "lm",
139  "Modules/LearningModule"
140  );
141  //echo "h"; exit;
142  ilUtil::sendSuccess($lng->txt("msg_obj_modified"), true);
143  $ilCtrl->redirect($this, "showTranslationImportForm");
144  }
145 }
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
Import related features for learning modules.
This class represents a selection list property in a property form.
This class represents a property form user interface.
global $DIC
Definition: saml.php:7
This class represents a file property in a property form.
showTranslationImportForm()
Translation import.
Import class.
initTranslationImportForm()
Init translation input form.
global $ilCtrl
Definition: ilias.php:18
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
importTranslation()
Import translation.
if(isset($_POST['submit'])) $form
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
Create styles array
The data for the language used.
__construct($a_lm)
Constructor.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
global $l
Definition: afr.php:30
static getInstance($a_obj_id)
Get instance.
executeCommand()
Execute command.
setSuffixes($a_suffixes)
Set Accepted Suffixes.
$_POST["username"]
if(!isset($_REQUEST['ReturnTo'])) if(!isset($_REQUEST['AuthId'])) $options
Definition: as_login.php:20