ILIAS  release_8 Revision v8.24
ilPCFileListGUI Class Reference

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V. More...

+ Inheritance diagram for ilPCFileListGUI:
+ Collaboration diagram for ilPCFileListGUI:

Public Member Functions

 __construct (ilPageObject $a_pg_obj, ?ilPageContent $a_content_obj, string $a_hier_id, string $a_pc_id="")
 
 executeCommand ()
 execute command More...
 
 insert (ilPropertyFormGUI $a_form=null)
 insert new file list form More...
 
 selectFile ()
 
 insertFromRepository (string $a_cmd="insert")
 Insert file from repository. More...
 
 insertFromWorkspace (string $a_cmd="insert")
 Insert file from personal workspace. More...
 
 create ()
 create new file list in dom and update page in db More...
 
 afterCreation ()
 
 edit ()
 edit properties form More...
 
 initEditForm (string $a_mode="edit")
 Init edit form. More...
 
 saveProperties ()
 save table properties in db and return to page edit screen More...
 
 setTabs (bool $a_create=true)
 Set Tabs. More...
 
 addFileItem ()
 Add file item. More...
 
 deleteFileItem ()
 Delete file items from list. More...
 
 savePositions ()
 Save positions of file items. More...
 
 savePositionsAndClasses ()
 Save positions of file items and style classes. More...
 
 checkStyleSelection ()
 Checks whether style selection shoudl be available or not. More...
 
 newFileItem ()
 New file item (called, if there is no file item in an existing) More...
 
 insertNewFileItem (int $a_file_ref_id=0)
 insert new file item after another item More...
 
 createFileItem ()
 insert new file item More...
 
 setItemTabs (string $a_cmd="")
 output tabs More...
 
- Public Member Functions inherited from ilPageContentGUI
 __construct (ilPageObject $a_pg_obj, ?ilPageContent $a_content_obj, string $a_hier_id="", string $a_pc_id="0")
 
 setContentObject (ilPageContent $a_val)
 
 getContentObject ()
 
 setPage (ilPageObject $a_val)
 
 getPage ()
 
 setPageConfig (ilPageConfig $a_val)
 
 getPageConfig ()
 
 setStyleId (int $a_styleid)
 
 getStyleId ()
 
 getStyle ()
 
 getCharacteristicsOfCurrentStyle (array $a_type)
 Get characteristics of current style and call setCharacteristics, if style is given. More...
 
 setCharacteristics (array $a_chars)
 
 getCharacteristics ()
 
 getHierId ()
 
 setHierId (string $a_hier_id)
 set hierarchical id in dom object More...
 
 delete ()
 
 moveAfter ()
 move content element after another element More...
 
 moveBefore ()
 move content element before another element More...
 
 splitPage ()
 split page to new page at specified position More...
 
 splitPageNext ()
 split page to next page at specified position More...
 
 displayValidationError ()
 
 cancelCreate ()
 cancel creating page content More...
 
 cancelUpdate ()
 cancel update More...
 
 cancel ()
 Cancel. More...
 
 deactivate ()
 gui function set enabled if is not enabled and vice versa More...
 
 cut ()
 Cut single element. More...
 
 copy ()
 Copy single element. More...
 
 getTemplateOptions (string $a_type="")
 Get table templates. More...
 

Protected Attributes

string $requested_file_ref_id
 
ilObjUser $user
 
ilTabsGUI $tabs
 
ilTree $tree
 
ilToolbarGUI $toolbar
 
ilSetting $settings
 
- Protected Attributes inherited from ilPageContentGUI
EditSessionRepository $edit_repo
 
string $pc_id = ""
 
array $chars
 
ilObjStyleSheet $style = null
 
ilLogger $log
 
int $styleid = 0
 
EditGUIRequest $request
 
string $sub_command = ""
 
int $requested_ref_id = 0
 
Style Content CharacteristicManager $char_manager
 

Additional Inherited Members

- Static Public Member Functions inherited from ilPageContentGUI
static _getCommonBBButtons ()
 
- Data Fields inherited from ilPageContentGUI
ilPageContent $content_obj
 
ilGlobalTemplateInterface $tpl
 
ilLanguage $lng
 
ilCtrl $ctrl
 
ilPageObject $pg_obj
 
string $hier_id = ""
 
php4DOMDocument $dom
 
 $updated
 
string $target_script = ""
 
string $return_location = ""
 
ilPageConfig $page_config = null
 
- Static Public Attributes inherited from ilPageContentGUI
static string $style_selector_reset = "margin-top:2px; margin-bottom:2px; text-indent:0px; position:static; float:none; width: auto;"
 
- Protected Member Functions inherited from ilPageContentGUI
 redirectToParent (string $hier_id="")
 
 getParentReturn (string $hier_id="")
 
 updateAndReturn ()
 
 setCurrentTextLang (string $lang_key)
 
 getCurrentTextLang ()
 
- Static Protected Attributes inherited from ilPageContentGUI
static array $common_bb_buttons
 

Detailed Description

This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Learning e.V.

ILIAS is licensed with the GPL-3.0, see https://www.gnu.org/licenses/gpl-3.0.en.html You should have received a copy of said license along with the source code, too.

If this is not the case or you just want to try ILIAS, you'll find us at: https://www.ilias.de https://github.com/ILIAS-eLearning Class ilPCListGUI

User Interface for LM List Editing

Author
Alexander Killing killi.nosp@m.ng@l.nosp@m.eifos.nosp@m..de

Definition at line 25 of file class.ilPCFileListGUI.php.

Constructor & Destructor Documentation

◆ __construct()

ilPCFileListGUI::__construct ( ilPageObject  $a_pg_obj,
?ilPageContent  $a_content_obj,
string  $a_hier_id,
string  $a_pc_id = "" 
)

Reimplemented from ilPageContentGUI.

Definition at line 34 of file class.ilPCFileListGUI.php.

39 {
40 global $DIC;
41
42 $this->user = $DIC->user();
43 $this->tabs = $DIC->tabs();
44 $this->ctrl = $DIC->ctrl();
45 $this->tpl = $DIC["tpl"];
46 $this->tree = $DIC->repositoryTree();
47 $this->lng = $DIC->language();
48 $this->toolbar = $DIC->toolbar();
49 $this->settings = $DIC->settings();
50 parent::__construct($a_pg_obj, $a_content_obj, $a_hier_id, $a_pc_id);
51 $this->setCharacteristics(array("FileListItem" => $this->lng->txt("cont_FileListItem")));
52 $this->requested_file_ref_id = $this->request->getString("file_ref_id");
53 }
setCharacteristics(array $a_chars)
global $DIC
Definition: feed.php:28
__construct(Container $dic, ilPlugin $plugin)
@inheritDoc

References $DIC, ILIAS\GlobalScreen\Provider\__construct(), ILIAS\Repository\ctrl(), ILIAS\Repository\lng(), ilPageContentGUI\setCharacteristics(), ILIAS\Repository\settings(), ILIAS\Repository\tabs(), ILIAS\Repository\toolbar(), and ILIAS\Repository\user().

+ Here is the call graph for this function:

Member Function Documentation

◆ addFileItem()

ilPCFileListGUI::addFileItem ( )

Add file item.

This function is called from file list table and calls newItemAfter function.

Definition at line 494 of file class.ilPCFileListGUI.php.

494 : void
495 {
496 $ilCtrl = $this->ctrl;
497
498 $files = $this->content_obj->getFileList();
499
500 if (count($files) >= 1) {
501 $ilCtrl->setParameterByClass(
502 "ilpcfileitemgui",
503 "hier_id",
504 $files[count($files) - 1]["hier_id"]
505 );
506 $ilCtrl->setParameterByClass(
507 "ilpcfileitemgui",
508 "pc_id",
509 $files[count($files) - 1]["pc_id"]
510 );
511 $ilCtrl->redirectByClass("ilpcfileitemgui", "newItemAfter");
512 } else {
513 $ilCtrl->redirect($this, "newFileItem");
514 }
515 }
setParameterByClass(string $a_class, string $a_parameter, $a_value)
@inheritDoc

◆ afterCreation()

ilPCFileListGUI::afterCreation ( )

Definition at line 262 of file class.ilPCFileListGUI.php.

262 : void
263 {
264 $this->pg_obj->stripHierIDs();
265 $this->pg_obj->addHierIDs();
266 $this->ctrl->setParameter($this, "hier_id", $this->content_obj->readHierId());
267 $this->ctrl->setParameter($this, "pc_id", $this->content_obj->readPCId());
268 $this->ctrl->redirect($this, "editFiles");
269 }

References ILIAS\Repository\ctrl().

+ Here is the call graph for this function:

◆ checkStyleSelection()

ilPCFileListGUI::checkStyleSelection ( )

Checks whether style selection shoudl be available or not.

Definition at line 569 of file class.ilPCFileListGUI.php.

569 : bool
570 {
571 // check whether there is more than one style class
572 $chars = $this->getCharacteristics();
573
574 $classes = $this->content_obj->getAllClasses();
575 if (count($chars) > 1) {
576 return true;
577 }
578 foreach ($classes as $class) {
579 if ($class != "" && $class != "FileListItem") {
580 return true;
581 }
582 }
583 return false;
584 }

◆ create()

ilPCFileListGUI::create ( )

create new file list in dom and update page in db

Definition at line 196 of file class.ilPCFileListGUI.php.

196 : void
197 {
198 global $DIC;
199
200 $mode = ($this->requested_file_ref_id != "")
201 ? "select_file"
202 : "create";
203 $form = $this->initEditForm($mode);
204 if (!$form->checkInput()) {
205 $form->setValuesByPost();
206 $this->insert($form);
207 return;
208 }
209
210 // from personal workspace
211 if (substr($this->requested_file_ref_id, 0, 4) == "wsp_") {
212 $fileObj = new ilObjFile(substr($this->requested_file_ref_id, 4), false);
213 }
214 // upload
215 elseif ($this->requested_file_ref_id == "") {
216 $fileObj = new ilObjFile();
217 $fileObj->setType("file");
218 $fileObj->setTitle($_FILES["file"]["name"]);
219 $fileObj->setDescription("");
220 $fileObj->setFileName($_FILES["file"]["name"]);
221 $fileObj->setMode("filelist");
222 $fileObj->create();
223 // upload file to filesystem
224
225 $upload = $DIC->upload();
226 if ($upload->hasBeenProcessed() !== true) {
227 $upload->process();
228 }
229
230 $fileObj->getUploadFile(
231 $_FILES["file"]["tmp_name"],
232 $_FILES["file"]["name"]
233 );
234 }
235 // from repository
236 else {
237 $fileObj = new ilObjFile($this->requested_file_ref_id);
238 }
239 $this->setCurrentTextLang($form->getInput("flst_language"));
240
241 //echo "::".is_object($this->dom).":";
242 $this->content_obj = new ilPCFileList($this->getPage());
243 $this->content_obj->create($this->pg_obj, $this->hier_id, $this->pc_id);
244 $this->content_obj->setListTitle(
245 $form->getInput("flst_title"),
246 $form->getInput("flst_language")
247 );
248 $this->content_obj->appendItem(
249 $fileObj->getId(),
250 $fileObj->getFileName(),
251 $fileObj->getFileType()
252 );
253
254 $this->updated = $this->pg_obj->update();
255 if ($this->updated === true) {
256 $this->afterCreation();
257 } else {
258 $this->insert();
259 }
260 }
Class ilObjFile.
initEditForm(string $a_mode="edit")
Init edit form.
insert(ilPropertyFormGUI $a_form=null)
insert new file list form
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
setCurrentTextLang(string $lang_key)

References $DIC.

◆ createFileItem()

ilPCFileListGUI::createFileItem ( )

insert new file item

Definition at line 677 of file class.ilPCFileListGUI.php.

677 : ?ilObjFile
678 {
679 global $DIC;
680
682
683 if ($_FILES["file"]["name"] == "") {
684 throw new ilCOPageFileHandlingException($lng->txt("upload_error_file_not_found"));
685 }
686
687 $form = $this->initEditForm();
688 // see #22541
689 // $form->checkInput();
690
691 $fileObj = new ilObjFile();
692 $fileObj->setType("file");
693 $fileObj->setTitle($_FILES["file"]["name"]);
694 $fileObj->setDescription("");
695 $fileObj->setFileName($_FILES["file"]["name"]);
696 $fileObj->setMode("filelist");
697 $fileObj->create();
698 // upload file to filesystem
699
700 $upload = $DIC->upload();
701 if ($upload->hasBeenProcessed() !== true) {
702 $upload->process();
703 }
704
705 $fileObj->getUploadFile(
706 $_FILES["file"]["tmp_name"],
707 $_FILES["file"]["name"]
708 );
709
710 return $fileObj;
711 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
txt(string $a_topic, string $a_default_lang_fallback_mod="")
gets the text for a given topic if the topic is not in the list, the topic itself with "-" will be re...

References $DIC, and $lng.

◆ deleteFileItem()

ilPCFileListGUI::deleteFileItem ( )

Delete file items from list.

Definition at line 520 of file class.ilPCFileListGUI.php.

520 : void
521 {
522 $ilCtrl = $this->ctrl;
523
524 $fid = $this->request->getIntArray("fid");
525 if (count($fid) > 0) {
526 $this->content_obj->deleteFileItems(array_keys($fid));
527 }
528 $this->updated = $this->pg_obj->update();
529 $ilCtrl->redirect($this, "editFiles");
530 }
redirect(object $a_gui_obj, string $a_cmd=null, string $a_anchor=null, bool $is_async=false)
@inheritDoc

◆ edit()

ilPCFileListGUI::edit ( )

edit properties form

Definition at line 274 of file class.ilPCFileListGUI.php.

274 : void
275 {
276 $this->setTabs(false);
277
278 $form = $this->initEditForm();
279 $this->tpl->setContent($form->getHTML());
280 }
setTabs(bool $a_create=true)
Set Tabs.

◆ executeCommand()

ilPCFileListGUI::executeCommand ( )

execute command

Definition at line 58 of file class.ilPCFileListGUI.php.

58 : void
59 {
60 // get next class that processes or forwards current command
61 $next_class = $this->ctrl->getNextClass($this);
62
63 $this->getCharacteristicsOfCurrentStyle(["flist_li"]); // scorm-2004
64
65 // get current command
66 $cmd = $this->ctrl->getCmd();
67
68 switch ($next_class) {
69 default:
70 $this->$cmd();
71 break;
72 }
73 }
getCharacteristicsOfCurrentStyle(array $a_type)
Get characteristics of current style and call setCharacteristics, if style is given.

References ILIAS\Repository\ctrl(), and ilPageContentGUI\getCharacteristicsOfCurrentStyle().

+ Here is the call graph for this function:

◆ initEditForm()

ilPCFileListGUI::initEditForm ( string  $a_mode = "edit")

Init edit form.

Definition at line 285 of file class.ilPCFileListGUI.php.

286 {
288 $ilCtrl = $this->ctrl;
290
291 $ti = null;
292 $si = null;
293 $form = new ilPropertyFormGUI();
294
295 if ($a_mode != "add_file") {
296 // title
297 $ti = new ilTextInputGUI($lng->txt("title"), "flst_title");
298 $ti->setMaxLength(80);
299 $ti->setSize(40);
300 $form->addItem($ti);
301
302 // language
304 $si = new ilSelectInputGUI($lng->txt("language"), "flst_language");
305 $si->setOptions($lang);
306 $form->addItem($si);
307 }
308
309 if (in_array($a_mode, array("create", "add_file"))) {
310 // file
311 $fi = new ilFileInputGUI($lng->txt("file"), "file");
312 $fi->setRequired(true);
313 $form->addItem($fi);
314 } elseif (in_array($a_mode, array("select_file"))) {
315 // file
316 $ne = new ilNonEditableValueGUI($lng->txt("file"), "");
317
318 $file_ref_id = (int) $this->requested_file_ref_id;
319 $fl_wsp_id = $this->request->getInt("fl_wsp_id");
320
321 if ($file_ref_id > 0) {
322 $file_obj = new ilObjFile($file_ref_id);
323 if (is_object($file_obj)) {
324 // ref id as hidden input
325 $hi = new ilHiddenInputGUI("file_ref_id");
326 $hi->setValue($file_ref_id);
327 $form->addItem($hi);
328
329 $ne->setValue($file_obj->getTitle());
330 }
331 } elseif ($fl_wsp_id > 0) {
332 // we need the object id for the instance
333 $tree = new ilWorkspaceTree($ilUser->getId());
334 $node = $tree->getNodeData($fl_wsp_id);
335
336 $file_obj = new ilObjFile($node["obj_id"], false);
337 if (is_object($file_obj)) {
338 // ref id as hidden input
339 $hi = new ilHiddenInputGUI("file_ref_id");
340 $hi->setValue("wsp_" . (int) $node["obj_id"]);
341 $form->addItem($hi);
342
343 $ne->setValue($file_obj->getTitle());
344 }
345 $this->tpl->parseCurrentBlock();
346 }
347
348 $form->addItem($ne);
349 }
350
351
352 switch ($a_mode) {
353 case "edit":
354 $ti->setValue($this->content_obj->getListTitle());
355 $si->setValue($this->content_obj->getLanguage());
356 $form->addCommandButton("saveProperties", $lng->txt("save"));
357 $form->addCommandButton("cancelUpdate", $lng->txt("cancel"));
358 $form->setTitle($lng->txt("cont_edit_file_list_properties"));
359 break;
360
361 case "create":
362 case "select_file":
363 if ($this->getCurrentTextLang() != "") {
364 $s_lang = $this->getCurrentTextLang();
365 } else {
366 $s_lang = $ilUser->getLanguage();
367 }
368 $si->setValue($s_lang);
369 $form->addCommandButton("create_flst", $lng->txt("save"));
370 $form->addCommandButton("cancelCreate", $lng->txt("cancel"));
371 $form->setTitle($lng->txt("cont_insert_file_list"));
372 break;
373
374 case "add_file":
375 $form->addCommandButton("insertNewFileItem", $lng->txt("save"));
376 $form->addCommandButton("editFiles", $lng->txt("cancel"));
377 $form->setTitle($lng->txt("cont_insert_file_item"));
378 break;
379 }
380
381 $form->setFormAction($ilCtrl->getFormAction($this));
382
383 return $form;
384 }
This class represents a file property in a property form.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
This class represents a property form user interface.
This class represents a selection list property in a property form.
This class represents a text property in a property form.
getNodeData(int $a_node_id, ?int $a_tree_pk=null)
get all information of a node.
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
$ilUser
Definition: imgupload.php:34
$lang
Definition: xapiexit.php:26

References $ilUser, $lang, $lng, ilMDLanguageItem\_getLanguages(), ilTree\getNodeData(), and ILIAS\Repository\int().

Referenced by insert(), and selectFile().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insert()

ilPCFileListGUI::insert ( ilPropertyFormGUI  $a_form = null)

insert new file list form

Definition at line 78 of file class.ilPCFileListGUI.php.

78 : void
79 {
80 $ilTabs = $this->tabs;
82
83 if (in_array($sub_command, ["insertNew", "insertFromRepository", "insertFromWorkspace"])) {
84 $this->edit_repo->setSubCmd($sub_command);
85 }
86
87 if (($sub_command == "") && $this->edit_repo->getSubCmd() != "") {
88 $sub_command = $this->edit_repo->getSubCmd();
89 }
90
91 switch ($sub_command) {
92 case "insertFromWorkspace":
93 $this->insertFromWorkspace();
94 break;
95
96 case "insertFromRepository":
97 $this->insertFromRepository();
98 break;
99
100 case "selectFile":
101 $this->selectFile();
102 break;
103
104 default:
105 $this->setTabs();
106 $ilTabs->setSubTabActive("cont_new_file");
107
108 $this->displayValidationError();
109
110 if ($a_form != null) {
111 $form = $a_form;
112 } else {
113 $form = $this->initEditForm("create");
114 }
115 $this->tpl->setContent($form->getHTML());
116 break;
117 }
118 }
insertFromWorkspace(string $a_cmd="insert")
Insert file from personal workspace.
insertFromRepository(string $a_cmd="insert")
Insert file from repository.

References ilPageContentGUI\$sub_command, $tabs, ilPageContentGUI\displayValidationError(), initEditForm(), insertFromRepository(), insertFromWorkspace(), selectFile(), and setTabs().

+ Here is the call graph for this function:

◆ insertFromRepository()

ilPCFileListGUI::insertFromRepository ( string  $a_cmd = "insert")

Insert file from repository.

Definition at line 135 of file class.ilPCFileListGUI.php.

135 : void
136 {
137 $ilTabs = $this->tabs;
138 $ilCtrl = $this->ctrl;
140
141 if ($a_cmd == "insert") {
142 $this->setTabs();
143 } else {
144 $this->setItemTabs($a_cmd);
145 }
146
147 $ilTabs->setSubTabActive("cont_file_from_repository");
148 $ilCtrl->setParameter($this, "subCmd", "insertFromRepository");
149
151 $this,
152 $a_cmd,
153 $this,
154 $a_cmd,
155 "file_ref_id"
156 );
157 if (!$exp->handleCommand()) {
158 $tpl->setContent($exp->getHTML());
159 }
160 }
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
setItemTabs(string $a_cmd="")
output tabs
ilGlobalTemplateInterface $tpl
setContent(string $a_html)
Sets content for standard template.

References ilPageContentGUI\$ctrl, $tabs, ilPageContentGUI\$tpl, ilGlobalTemplateInterface\setContent(), setItemTabs(), and setTabs().

Referenced by insert().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insertFromWorkspace()

ilPCFileListGUI::insertFromWorkspace ( string  $a_cmd = "insert")

Insert file from personal workspace.

Definition at line 165 of file class.ilPCFileListGUI.php.

167 : void {
168 $ilTabs = $this->tabs;
169 $ilCtrl = $this->ctrl;
172
173 if ($a_cmd == "insert") {
174 $this->setTabs();
175 } else {
176 $this->setItemTabs($a_cmd);
177 }
178
179 $ilTabs->setSubTabActive("cont_file_from_workspace");
180
181 $exp = new ilWorkspaceExplorerGUI($ilUser->getId(), $this, $a_cmd, $this, $a_cmd, "fl_wsp_id");
182 $ilCtrl->setParameter($this, "subCmd", "selectFile");
183 $exp->setCustomLinkTarget($ilCtrl->getLinkTarget($this, $a_cmd));
184 $ilCtrl->setParameter($this, "subCmd", "insertFromWorkspace");
185 $exp->setTypeWhiteList(array("wsrt", "wfld", "file"));
186 $exp->setSelectableTypes(array("file"));
187 if ($exp->handleCommand()) {
188 return;
189 }
190 $tpl->setContent($exp->getHTML());
191 }
Explorer for selecting a personal workspace item.

References setTabs().

Referenced by insert().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insertNewFileItem()

ilPCFileListGUI::insertNewFileItem ( int  $a_file_ref_id = 0)

insert new file item after another item

Definition at line 636 of file class.ilPCFileListGUI.php.

636 : void
637 {
639
640 $fl_wsp_id = $this->request->getInt("fl_wsp_id");
641
642 // from personal workspace
643 if ($fl_wsp_id > 0) {
644 // we need the object id for the instance
645 $tree = new ilWorkspaceTree($ilUser->getId());
646 $node = $tree->getNodeData($fl_wsp_id);
647
648 $file_obj = new ilObjFile($node["obj_id"], false);
649 }
650 // upload
651 elseif ($a_file_ref_id == 0) {
652 $file_obj = $this->createFileItem();
653 }
654 // from repository
655 else {
656 $file_obj = new ilObjFile($a_file_ref_id);
657 }
658 if (is_object($file_obj)) {
659 $this->content_obj->appendItem(
660 $file_obj->getId(),
661 $file_obj->getTitle(),
662 $file_obj->getFileType()
663 );
664 $this->updated = $this->pg_obj->update();
665 if ($this->updated === true) {
666 //$this->ctrl->returnToParent($this, "jump".$this->hier_id);
667 $this->ctrl->redirect($this, "editFiles");
668 }
669 }
670
671 $this->newFileItem();
672 }
newFileItem()
New file item (called, if there is no file item in an existing)
createFileItem()
insert new file item

References $ilUser, ILIAS\Repository\ctrl(), and ilTree\getNodeData().

+ Here is the call graph for this function:

◆ newFileItem()

ilPCFileListGUI::newFileItem ( )

New file item (called, if there is no file item in an existing)

Definition at line 595 of file class.ilPCFileListGUI.php.

595 : void
596 {
597 $ilTabs = $this->tabs;
598
600 if (in_array($sub_command, ["insertNew", "insertFromRepository", "insertFromWorkspace"])) {
601 $this->edit_repo->setSubCmd($sub_command);
602 }
603
604 if (($sub_command == "") && $this->edit_repo->getSubCmd() != "") {
605 $sub_command = $this->edit_repo->getSubCmd();
606 }
607
608 switch ($sub_command) {
609 case "insertFromWorkspace":
610 $this->insertFromWorkspace("newFileItem");
611 break;
612
613 case "insertFromRepository":
614 $this->insertFromRepository("newFileItem");
615 break;
616
617 case "selectFile":
618 $this->insertNewFileItem($this->requested_file_ref_id);
619 break;
620
621 default:
622 $this->setItemTabs("newFileItem");
623 $ilTabs->setSubTabActive("cont_new_file");
624
625 $this->displayValidationError();
626
627 $form = $this->initEditForm("add_file");
628 $this->tpl->setContent($form->getHTML());
629 break;
630 }
631 }
insertNewFileItem(int $a_file_ref_id=0)
insert new file item after another item

◆ savePositions()

ilPCFileListGUI::savePositions ( )

Save positions of file items.

Definition at line 535 of file class.ilPCFileListGUI.php.

535 : void
536 {
537 $ilCtrl = $this->ctrl;
538
539 $pos = $this->request->getIntArray("position");
540 if (count($pos) > 0) {
541 $this->content_obj->savePositions($pos);
542 }
543 $this->updated = $this->pg_obj->update();
544 $ilCtrl->redirect($this, "editFiles");
545 }

◆ savePositionsAndClasses()

ilPCFileListGUI::savePositionsAndClasses ( )

Save positions of file items and style classes.

Definition at line 550 of file class.ilPCFileListGUI.php.

550 : void
551 {
552 $ilCtrl = $this->ctrl;
553
554 $pos = $this->request->getIntArray("position");
555 $class = $this->request->getStringArray("class");
556 if (count($pos) > 0) {
557 $this->content_obj->savePositions($pos);
558 }
559 if (count($class) > 0) {
560 $this->content_obj->saveStyleClasses($class);
561 }
562 $this->updated = $this->pg_obj->update();
563 $ilCtrl->redirect($this, "editFiles");
564 }

◆ saveProperties()

ilPCFileListGUI::saveProperties ( )

save table properties in db and return to page edit screen

Definition at line 390 of file class.ilPCFileListGUI.php.

390 : void
391 {
392 $form = $this->initEditForm("edit");
393 $form->checkInput();
394 $this->content_obj->setListTitle(
395 $form->getInput("flst_title"),
396 $form->getInput("flst_language")
397 );
398 $this->updated = $this->pg_obj->update();
399 if ($this->updated === true) {
400 $this->ctrl->returnToParent($this, "jump" . $this->hier_id);
401 } else {
402 $this->pg_obj->addHierIDs();
403 $this->edit();
404 }
405 }
edit()
edit properties form

References ILIAS\Repository\ctrl().

+ Here is the call graph for this function:

◆ selectFile()

ilPCFileListGUI::selectFile ( )

Definition at line 120 of file class.ilPCFileListGUI.php.

120 : void
121 {
122 $ilTabs = $this->tabs;
123 $this->setTabs();
124 $ilTabs->setSubTabActive("cont_file_from_repository");
125
126 $this->displayValidationError();
127 $form = $this->initEditForm("select_file");
128
129 $this->tpl->setContent($form->getHTML());
130 }

References $tabs, ilPageContentGUI\displayValidationError(), initEditForm(), and setTabs().

Referenced by insert().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setItemTabs()

ilPCFileListGUI::setItemTabs ( string  $a_cmd = "")

output tabs

Definition at line 717 of file class.ilPCFileListGUI.php.

717 : void
718 {
719 $ilTabs = $this->tabs;
720 $ilCtrl = $this->ctrl;
722
723 $ilTabs->addTarget(
724 "cont_back",
725 $this->ctrl->getParentReturn($this),
726 "",
727 ""
728 );
729
730 if ($a_cmd != "") {
731 $ilCtrl->setParameter($this, "subCmd", "insertNew");
732 $ilTabs->addSubTabTarget(
733 "cont_new_file",
734 $ilCtrl->getLinkTarget($this, $a_cmd),
735 $a_cmd
736 );
737
738 $ilCtrl->setParameter($this, "subCmd", "insertFromRepository");
739 $ilTabs->addSubTabTarget(
740 "cont_file_from_repository",
741 $ilCtrl->getLinkTarget($this, $a_cmd),
742 $a_cmd
743 );
744 $ilCtrl->setParameter($this, "subCmd", "");
745
746 if (!$ilSetting->get("disable_personal_workspace") &&
747 !$ilSetting->get("disable_wsp_files")) {
748 $ilCtrl->setParameter($this, "subCmd", "insertFromWorkspace");
749 $ilTabs->addSubTabTarget(
750 "cont_file_from_workspace",
751 $ilCtrl->getLinkTarget($this, $a_cmd),
752 $a_cmd
753 );
754 $ilCtrl->setParameter($this, "subCmd", "");
755 }
756 }
757 }
global $ilSetting
Definition: privfeed.php:17

References $ilSetting, ILIAS\LTI\ToolProvider\$settings, and ILIAS\Repository\ctrl().

Referenced by insertFromRepository().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setTabs()

ilPCFileListGUI::setTabs ( bool  $a_create = true)

Set Tabs.

Definition at line 433 of file class.ilPCFileListGUI.php.

433 : void
434 {
435 $ilTabs = $this->tabs;
436 $ilCtrl = $this->ctrl;
439
440 if ($a_create) {
441 $cmd = "insert";
442
443 $ilCtrl->setParameter($this, "subCmd", "insertNew");
444 $ilTabs->addSubTabTarget(
445 "cont_new_file",
446 $ilCtrl->getLinkTarget($this, $cmd),
447 $cmd
448 );
449
450 $ilCtrl->setParameter($this, "subCmd", "insertFromRepository");
451 $ilTabs->addSubTabTarget(
452 "cont_file_from_repository",
453 $ilCtrl->getLinkTarget($this, $cmd),
454 $cmd
455 );
456 $ilCtrl->setParameter($this, "subCmd", "");
457
458 if (!$ilSetting->get("disable_personal_workspace") &&
459 !$ilSetting->get("disable_wsp_files")) {
460 $ilCtrl->setParameter($this, "subCmd", "insertFromWorkspace");
461 $ilTabs->addSubTabTarget(
462 "cont_file_from_workspace",
463 $ilCtrl->getLinkTarget($this, $cmd),
464 $cmd
465 );
466 $ilCtrl->setParameter($this, "subCmd", "");
467 }
468 } else {
469 $ilTabs->setBackTarget(
470 $lng->txt("pg"),
471 $this->ctrl->getParentReturn($this)
472 );
473
474 $ilTabs->addTarget(
475 "cont_ed_edit_files",
476 $ilCtrl->getLinkTarget($this, "editFiles"),
477 "editFiles",
478 get_class($this)
479 );
480
481 $ilTabs->addTarget(
482 "cont_ed_edit_prop",
483 $ilCtrl->getLinkTarget($this, "edit"),
484 "edit",
485 get_class($this)
486 );
487 }
488 }

References $ilSetting, $lng, and ILIAS\LTI\ToolProvider\$settings.

Referenced by insert(), insertFromRepository(), insertFromWorkspace(), and selectFile().

+ Here is the caller graph for this function:

Field Documentation

◆ $requested_file_ref_id

string ilPCFileListGUI::$requested_file_ref_id
protected

Definition at line 27 of file class.ilPCFileListGUI.php.

◆ $settings

ilSetting ilPCFileListGUI::$settings
protected

Definition at line 32 of file class.ilPCFileListGUI.php.

◆ $tabs

ilTabsGUI ilPCFileListGUI::$tabs
protected

Definition at line 29 of file class.ilPCFileListGUI.php.

Referenced by insert(), insertFromRepository(), and selectFile().

◆ $toolbar

ilToolbarGUI ilPCFileListGUI::$toolbar
protected

Definition at line 31 of file class.ilPCFileListGUI.php.

◆ $tree

ilTree ilPCFileListGUI::$tree
protected

Definition at line 30 of file class.ilPCFileListGUI.php.

◆ $user

ilObjUser ilPCFileListGUI::$user
protected

Definition at line 28 of file class.ilPCFileListGUI.php.


The documentation for this class was generated from the following file: