3 require_once(
"class.ilOrgUnitSimpleImport.php");
49 $this->parent_gui = $parent_gui;
50 $this->parent_object = $parent_gui->object;
51 $this->tabs_gui = $this->parent_gui->tabs_gui;
52 $this->toolbar = $ilToolbar;
55 $this->lng->loadLanguageModule(
'user');
57 if (! $this->ilAccess->checkaccess(
"write",
"", $this->parent_gui->object->getRefId())) {
67 $cmd = $this->ctrl->getCmd();
81 $form = $this->
initForm(
"startImport");
82 $this->tpl->setContent($form->getHTML());
88 $input =
new ilFileInputGUI($this->lng->txt(
"import_xml_file"),
"import_file");
90 $input->setSuffixes(array(
'zip',
'xml'));
91 $form->addItem($input);
92 $form->setFormAction($this->ctrl->getFormAction($this));
93 $form->addCommandButton($submit_action, $this->lng->txt(
"import"));
100 $form = $this->
initForm(
"startImport");
101 if (! $form->checkInput()) {
102 $this->tpl->setContent($form->getHTML());
104 $file = $form->getInput(
"import_file");
107 $file_path =
$file[
"tmp_name"];
108 $file_type = pathinfo(
$file[
"name"], PATHINFO_EXTENSION);
109 $file_name = pathinfo(
$file[
"name"], PATHINFO_FILENAME);
111 if($file_type ==
"zip") {
112 $extract_path = $file_path.
'_extracted/';
113 $extracted_file = $extract_path.$file_name.
'/manifest.xml';
115 $zip =
new ZipArchive();
116 $res = $zip->open($file_path);
118 $zip->extractTo($extract_path);
121 if(file_exists($extracted_file)) {
122 $file_path = $extracted_file;
127 $importer->simpleImport($file_path);
129 $this->
ilLog->
write($e->getMessage() .
" - " . $e->getTraceAsString());
131 $this->ctrl->redirect($this,
"render");
141 if (! $importer->hasErrors() && ! $importer->hasWarnings()) {
142 $stats = $importer->getStats();
143 ilUtil::sendSuccess(sprintf($this->lng->txt(
"import_successful"), $stats[
"created"], $stats[
"updated"], $stats[
"deleted"]),
true);
145 if ($importer->hasWarnings()) {
146 $msg = $this->lng->txt(
"import_terminated_with_warnings") .
" <br/>";
147 foreach ($importer->getWarnings() as $warning) {
148 $msg .=
"-" . $this->lng->txt($warning[
"lang_var"]) .
" (Import ID: " . $warning[
"import_id"] .
")<br>";
152 if ($importer->hasErrors()) {
153 $msg = $this->lng->txt(
"import_terminated_with_errors") .
"<br/>";
154 foreach ($importer->getErrors() as $warning) {
155 $msg .=
"- " . $this->lng->txt($warning[
"lang_var"]) .
" (Import ID: " . $warning[
"import_id"] .
")<br>";
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
Class ilOrgUnitSimpleImportGUI.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
write($a_msg, $a_log_level=NULL)
logging
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
Class ilOrgUnitSimpleImport.
displayImportResults($importer)