ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
class.ilLMMultiSrtUploadGUI.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 {
14  protected $lm;
15  public $multi_srt;
16 
22  public function __construct(ilObjLearningModule $a_lm)
23  {
24  global $ilCtrl;
25 
26  $this->ctrl = $ilCtrl;
27  $this->lm = $a_lm;
28  include_once("./Modules/LearningModule/classes/class.ilLMMultiSrt.php");
29  $this->multi_srt = new ilLMMultiSrt($this->lm);
30  }
31 
35  function executeCommand()
36  {
37  global $ilCtrl;
38 
39  $cmd = $ilCtrl->getCmd("uploadMultipleSubtitleFileForm");
40 
41  if (in_array($cmd, array("uploadMultipleSubtitleFileForm", "uploadMultipleSubtitleFile", "showMultiSubtitleConfirmationTable", "cancelMultiSrt", "saveMultiSrt")))
42  {
43  $this->$cmd();
44  }
45  }
46 
51  {
52  global $ilToolbar, $lng, $ilCtrl;
53 
54  ilUtil::sendInfo($lng->txt("cont_upload_multi_srt_howto"));
55 
56  // upload file
57  $ilToolbar->setFormAction($ilCtrl->getFormAction($this), true);
58  include_once("./Services/Form/classes/class.ilFileInputGUI.php");
59  $fi = new ilFileInputGUI($lng->txt("cont_subtitle_file")." (.zip)", "subtitle_file");
60  $fi->setSuffixes(array("zip"));
61  $ilToolbar->addInputItem($fi, true);
62 
63  $ilToolbar->addFormButton($lng->txt("upload"), "uploadMultipleSubtitleFile");
64  }
65 
70  {
71  try
72  {
73  $this->multi_srt->uploadMultipleSubtitleFile(ilUtil::stripSlashesArray($_FILES["subtitle_file"]));
74  $this->ctrl->redirect($this, "showMultiSubtitleConfirmationTable");
75  }
76  catch (ilLMException $e)
77  {
78  ilUtil::sendFailure($e->getMessage(), true);
79  $this->ctrl->redirect($this, "uploadMultipleSubtitleFileForm");
80  }
81 
82  }
83 
88  {
89  global $tpl;
90 
91  include_once("./Modules/LearningModule/classes/class.ilLMMultiSrtConfirmationTable2GUI.php");
92  $tab = new ilLMMultiSrtConfirmationTable2GUI($this, "showMultiSubtitleConfirmationTable");
93  $tpl->setContent($tab->getHTML());
94  }
95 
99  function cancelMultiSrt()
100  {
101  $this->multi_srt->clearMultiSrtDirectory();
102  $this->ctrl->redirect($this, "uploadMultipleSubtitleFileForm");
103  }
104 
108  function saveMultiSrt()
109  {
110  global $ilCtrl, $lng;
111 
112  $cnt = $this->multi_srt->moveMultiSrtFiles();
113  $this->multi_srt->clearMultiSrtDirectory();
114 
115  ilUtil::sendSuccess($lng->txt("cont_moved_srt_files")." (".$cnt.")", true);
116  $ilCtrl->redirect($this, "uploadMultipleSubtitleFileForm");
117  }
118 
119 
120 
121 }
122 
123 ?>
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
__construct(ilObjLearningModule $a_lm)
Constructor.
Class ilObjLearningModule.
List srt files from zip file for upload confirmation.
Upload SRT files to all media objects of a learning module.
This class represents a file property in a property form.
showMultiSubtitleConfirmationTable()
List of srt files in zip file.
$cmd
Definition: sahs_server.php:35
Base exception class for learning modules.
global $tpl
Definition: ilias.php:8
global $ilCtrl
Definition: ilias.php:18
uploadMultipleSubtitleFileForm()
Upload multiple stubtitles.
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
uploadMultipleSubtitleFile()
Upload multiple subtitles.
cancelMultiSrt()
Cancel Multi Feedback.
saveMultiSrt()
Save selected srt files as new srt files.
Create styles array
The data for the language used.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static stripSlashesArray($a_arr, $a_strip_html=true, $a_allow="")
Strip slashes from array.
global $lng
Definition: privfeed.php:17
setSuffixes($a_suffixes)
Set Accepted Suffixes.
Handler class for multi srt upload in learning modules.