ILIAS  release_6 Revision v6.24-5-g0c8bfefb3b8
class.ilMediaPoolImportGUI.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_mep)
35 {
36 global $DIC;
37
38 $this->ctrl = $DIC->ctrl();
39 $this->lng = $DIC->language();
40 $this->tpl = $DIC["tpl"];
41 $this->mep = $a_mep;
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 {
68
69 ilUtil::sendInfo($lng->txt("mep_trans_import_info"));
70 $form = $this->initTranslationImportForm();
71 $tpl->setContent($form->getHTML());
72 }
73
77 public function initTranslationImportForm()
78 {
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->mep->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("mep_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("mep_import_trans"));
108 $form->setFormAction($ilCtrl->getFormAction($this));
109
110 return $form;
111 }
112
116 public function importTranslation()
117 {
120
121 include_once("./Services/Export/classes/class.ilImport.php");
122 $imp = new ilImport();
123 $conf = $imp->getConfig("Modules/MediaPool");
124
125 $target_lang = ilUtil::stripSlashes($_POST["import_lang"]);
126 include_once("./Services/Object/classes/class.ilObjectTranslation.php");
127 $ot = ilObjectTranslation::getInstance($this->mep->getId());
128 if ($target_lang == $ot->getMasterLanguage()) {
129 ilUtil::sendFailure($lng->txt("mep_transl_master_language_not_allowed"), true);
130 $ilCtrl->redirect($this, "showTranslationImportForm");
131 }
132
133 $conf->setTranslationImportMode($this->mep, $target_lang);
134 $imp->importObject(
135 null,
136 $_FILES["importfile"]["tmp_name"],
137 $_FILES["importfile"]["name"],
138 "mep",
139 "Modules/MediaPool"
140 );
141 //echo "h"; exit;
142 ilUtil::sendSuccess($lng->txt("msg_obj_modified"), true);
143 $ilCtrl->redirect($this, "showTranslationImportForm");
144 }
145}
$_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 media pools (currently used for translation imports)
initTranslationImportForm()
Init translation input form.
showTranslationImportForm()
Translation import.
importTranslation()
Import translation.
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 $ilCtrl
Definition: ilias.php:18
$DIC
Definition: xapitoken.php:46