ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ilPCFileListGUI Class Reference

Class ilPCListGUI. More...

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

Public Member Functions

 __construct (&$a_pg_obj, &$a_content_obj, $a_hier_id, $a_pc_id="")
 Constructor public. More...
 
 executeCommand ()
 execute command More...
 
 insert ()
 insert new file list form More...
 
 selectFile ()
 Select file. More...
 
 insertFromRepository ($a_cmd="insert")
 Insert file from repository. More...
 
 insertFromWorkspace ($a_cmd="insert")
 Insert file from personal workspace. More...
 
 create ()
 create new file list in dom and update page in db More...
 
 edit ()
 edit properties form More...
 
 initEditForm ($a_mode="edit")
 Init edit form. More...
 
 saveProperties ()
 save table properties in db and return to page edit screen More...
 
 editFiles ()
 Edit Files. More...
 
 setTabs ($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 ($a_file_ref_id=0)
 insert new file item after another item More...
 
 createFileItem ()
 insert new file item More...
 
 setItemTabs ($a_cmd="")
 output tabs More...
 
- Public Member Functions inherited from ilPageContentGUI
 __construct ($a_pg_obj, $a_content_obj, $a_hier_id=0, $a_pc_id="")
 Constructor public. More...
 
 setContentObject ($a_val)
 Set content object. More...
 
 getContentObject ()
 Get content object. More...
 
 setPage ($a_val)
 Set page. More...
 
 getPage ()
 Get page. More...
 
 setPageConfig ($a_val)
 Set Page Config. More...
 
 getPageConfig ()
 Get Page Config. More...
 
 setStyleId ($a_styleid)
 Set Style Id. More...
 
 getStyleId ()
 Get Style Id. More...
 
 getStyle ()
 Get style object. More...
 
 setCharacteristics ($a_chars)
 Set Characteristics. More...
 
 getCharacteristics ()
 Get characteristics. More...
 
 getHierId ()
 get hierarchical id in dom object More...
 
 setHierId ($a_hier_id)
 get hierarchical id in dom object More...
 
 getBBMenu ($a_ta_name="par_content")
 Get the bb menu incl. More...
 
 delete ()
 delete content element More...
 
 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 ()
 display validation errors More...
 
 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 ($a_type)
 Get table templates. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ilPageContentGUI
static _getCommonBBButtons ()
 Get common bb buttons. More...
 
- Data Fields inherited from ilPageContentGUI
 $content_obj
 
 $ilias
 
 $tpl
 
 $lng
 
 $ctrl
 
 $pg_obj
 
 $hier_id
 
 $dom
 
 $updated
 
 $target_script
 
 $return_location
 
 $page_config = null
 
- Static Public Attributes inherited from ilPageContentGUI
static $style_selector_reset = "margin-top:2px; margin-bottom:2px; text-indent:0px; position:static; float:none; width: auto;"
 
- Protected Member Functions inherited from ilPageContentGUI
 getCharacteristicsOfCurrentStyle ($a_type)
 Get characteristics of current style. More...
 
- Protected Attributes inherited from ilPageContentGUI
 $log
 
- Static Protected Attributes inherited from ilPageContentGUI
static $common_bb_buttons
 

Detailed Description

Class ilPCListGUI.

User Interface for LM List Editing

Author
Alex Killing alex..nosp@m.kill.nosp@m.ing@g.nosp@m.mx.d.nosp@m.e
Version
$Id$

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

Constructor & Destructor Documentation

◆ __construct()

ilPCFileListGUI::__construct ( $a_pg_obj,
$a_content_obj,
  $a_hier_id,
  $a_pc_id = "" 
)

Constructor public.

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

References array, and ilPageContentGUI\setCharacteristics().

25  {
26  parent::__construct($a_pg_obj, $a_content_obj, $a_hier_id, $a_pc_id);
27  $this->setCharacteristics(array("FileListItem" => $this->lng->txt("cont_FileListItem")));
28  }
setCharacteristics($a_chars)
Set Characteristics.
Create styles array
The data for the language used.
+ 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 510 of file class.ilPCFileListGUI.php.

References $files, and $ilCtrl.

511  {
512  global $ilCtrl;
513 
514  $files = $this->content_obj->getFileList();
515 
516  if (count($files) >= 1)
517  {
518  $ilCtrl->setParameterByClass("ilpcfileitemgui", "hier_id",
519  $files[count($files) - 1]["hier_id"]);
520  $ilCtrl->setParameterByClass("ilpcfileitemgui", "pc_id",
521  $files[count($files) - 1]["pc_id"]);
522  $ilCtrl->redirectByClass("ilpcfileitemgui", "newItemAfter");
523  }
524  else
525  {
526  $ilCtrl->redirect($this, "newFileItem");
527  }
528  }
$files
Definition: add-vimline.php:18
global $ilCtrl
Definition: ilias.php:18

◆ checkStyleSelection()

ilPCFileListGUI::checkStyleSelection ( )

Checks whether style selection shoudl be available or not.

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

References ilPageContentGUI\getCharacteristics().

588  {
589  // check whether there is more than one style class
590  $chars = $this->getCharacteristics();
591 
592  $classes = $this->content_obj->getAllClasses();
593  if (count($chars) > 1)
594  {
595  return true;
596  }
597  foreach ($classes as $class)
598  {
599  if ($class != "" && $class != "FileListItem")
600  {
601  return true;
602  }
603  }
604  return false;
605  }
getCharacteristics()
Get characteristics.
+ Here is the call graph for this function:

◆ create()

ilPCFileListGUI::create ( )

create new file list in dom and update page in db

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

References $_POST, $_SESSION, ilPageContentGUI\getPage(), initEditForm(), insert(), and ilUtil\stripSlashes().

242  {
243  include_once("./Modules/File/classes/class.ilObjFile.php");
244 
245  $form = $this->initEditForm("create");
246  $form->checkInput();
247 
248  // from personal workspace
249  if(substr($_POST["file_ref_id"], 0, 4) == "wsp_")
250  {
251  $fileObj = new ilObjFile(substr($_POST["file_ref_id"], 4), false);
252  }
253  // upload
254  else if ($_POST["file_ref_id"] == 0)
255  {
256  $fileObj = new ilObjFile();
257  $fileObj->setType("file");
258  $fileObj->setTitle($_FILES["file"]["name"]);
259  $fileObj->setDescription("");
260  $fileObj->setFileName($_FILES["file"]["name"]);
261  $fileObj->setFileType($_FILES["file"]["type"]);
262  $fileObj->setFileSize($_FILES["file"]["size"]);
263  $fileObj->setMode("filelist");
264  $fileObj->create();
265  // upload file to filesystem
266  $fileObj->createDirectory();
267  $fileObj->raiseUploadError(false);
268  $fileObj->getUploadFile($_FILES["file"]["tmp_name"],
269  $_FILES["file"]["name"]);
270  }
271  // from repository
272  else
273  {
274  $fileObj = new ilObjFile($_POST["file_ref_id"]);
275  }
276  $_SESSION["il_text_lang_".$_GET["ref_id"]] = $_POST["flst_language"];
277 
278 //echo "::".is_object($this->dom).":";
279  $this->content_obj = new ilPCFileList($this->getPage());
280  $this->content_obj->create($this->pg_obj, $this->hier_id, $this->pc_id);
281  $this->content_obj->setListTitle(ilUtil::stripSlashes($_POST["flst_title"]), $_POST["flst_language"]);
282  $this->content_obj->appendItem($fileObj->getId(), $fileObj->getFileName(),
283  $fileObj->getFileType());
284 
285  $this->updated = $this->pg_obj->update();
286  if ($this->updated === true)
287  {
288  $this->ctrl->returnToParent($this, "jump".$this->hier_id);
289  }
290  else
291  {
292  $this->insert();
293  }
294  }
$_SESSION["AccountId"]
initEditForm($a_mode="edit")
Init edit form.
Class ilObjFile.
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
Class ilPCFileList.
$_POST["username"]
insert()
insert new file list form
+ Here is the call graph for this function:

◆ createFileItem()

ilPCFileListGUI::createFileItem ( )

insert new file item

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

References $_GET, ilPageContentGUI\$lng, initEditForm(), and ilUtil\sendFailure().

Referenced by insertNewFileItem().

715  {
716  global $lng;
717 
718  if ($_FILES["file"]["name"] == "")
719  {
720  $_GET["subCmd"] = "-";
721  ilUtil::sendFailure($lng->txt("upload_error_file_not_found"));
722  return false;
723  }
724 
725  $form = $this->initEditForm();
726  // see #22541
727 // $form->checkInput();
728 
729  include_once("./Modules/File/classes/class.ilObjFile.php");
730  $fileObj = new ilObjFile();
731  $fileObj->setType("file");
732  $fileObj->setTitle($_FILES["file"]["name"]);
733  $fileObj->setDescription("");
734  $fileObj->setFileName($_FILES["file"]["name"]);
735  $fileObj->setFileType($_FILES["file"]["type"]);
736  $fileObj->setFileSize($_FILES["file"]["size"]);
737  $fileObj->setMode("filelist");
738  $fileObj->create();
739  $fileObj->raiseUploadError(false);
740  // upload file to filesystem
741  $fileObj->createDirectory();
742  $fileObj->getUploadFile($_FILES["file"]["tmp_name"],
743  $_FILES["file"]["name"]);
744 
745  return $fileObj;
746  }
initEditForm($a_mode="edit")
Init edit form.
$_GET["client_id"]
Class ilObjFile.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deleteFileItem()

ilPCFileListGUI::deleteFileItem ( )

Delete file items from list.

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

References $_POST, $ilCtrl, and array.

534  {
535  global $ilCtrl;
536 
537  if (is_array($_POST["fid"]))
538  {
539  $ids = array();
540  foreach($_POST["fid"] as $k => $v)
541  {
542  $ids[] = $k;
543  }
544  $this->content_obj->deleteFileItems($ids);
545  }
546  $this->updated = $this->pg_obj->update();
547  $ilCtrl->redirect($this, "editFiles");
548  }
global $ilCtrl
Definition: ilias.php:18
Create styles array
The data for the language used.
$_POST["username"]

◆ edit()

ilPCFileListGUI::edit ( )

edit properties form

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

References initEditForm(), and setTabs().

Referenced by saveProperties().

300  {
301  $this->setTabs(false);
302 
303  $form = $this->initEditForm();
304  $this->tpl->setContent($form->getHTML());
305  }
setTabs($a_create=true)
Set Tabs.
initEditForm($a_mode="edit")
Init edit form.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ editFiles()

ilPCFileListGUI::editFiles ( )

Edit Files.

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

References $ilCtrl, ilPageContentGUI\$lng, ilPageContentGUI\$tpl, and setTabs().

448  {
449  global $tpl, $ilToolbar, $ilCtrl, $lng;
450 
451  $this->setTabs(false);
452 
453  $ilToolbar->addButton($lng->txt("cont_add_file"),
454  $ilCtrl->getLinkTarget($this, "addFileItem"));
455 
456  include_once("./Services/COPage/classes/class.ilPCFileListTableGUI.php");
457  $table_gui = new ilPCFileListTableGUI($this, "editFiles", $this->content_obj);
458  $tpl->setContent($table_gui->getHTML());
459  }
setTabs($a_create=true)
Set Tabs.
global $ilCtrl
Definition: ilias.php:18
TableGUI class for file list.
+ Here is the call graph for this function:

◆ executeCommand()

ilPCFileListGUI::executeCommand ( )

execute command

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

References $cmd, $ret, and ilPageContentGUI\getCharacteristicsOfCurrentStyle().

34  {
35  // get next class that processes or forwards current command
36  $next_class = $this->ctrl->getNextClass($this);
37 
38  $this->getCharacteristicsOfCurrentStyle("flist_li"); // scorm-2004
39 
40  // get current command
41  $cmd = $this->ctrl->getCmd();
42 
43  switch($next_class)
44  {
45  default:
46  $ret = $this->$cmd();
47  break;
48  }
49 
50  return $ret;
51  }
getCharacteristicsOfCurrentStyle($a_type)
Get characteristics of current style.
$cmd
Definition: sahs_server.php:35
$ret
Definition: parser.php:6
+ Here is the call graph for this function:

◆ initEditForm()

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

Init edit form.

Parameters
int$a_modeEdit Mode

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

References $_GET, $_SESSION, $ilCtrl, $ilUser, $lang, ilPageContentGUI\$lng, $si, ilMDLanguageItem\_getLanguages(), array, ilTree\getNodeData(), ilTextInputGUI\setMaxLength(), and ilFormPropertyGUI\setRequired().

Referenced by create(), createFileItem(), edit(), insert(), newFileItem(), and selectFile().

313  {
314  global $lng, $ilCtrl, $ilUser;
315 
316  include_once("Services/Form/classes/class.ilPropertyFormGUI.php");
317  $form = new ilPropertyFormGUI();
318 
319  if ($a_mode != "add_file")
320  {
321  // title
322  $ti = new ilTextInputGUI($lng->txt("title"), "flst_title");
323  $ti->setMaxLength(80);
324  $ti->setSize(40);
325  $form->addItem($ti);
326 
327  // language
328  require_once("Services/MetaData/classes/class.ilMDLanguageItem.php");
330  $si = new ilSelectInputGUI($lng->txt("language"), "flst_language");
331  $si->setOptions($lang);
332  $form->addItem($si);
333  }
334 
335  if (in_array($a_mode, array("create", "add_file")))
336  {
337  // file
338  $fi = new ilFileInputGUI($lng->txt("file"), "file");
339  $fi->setRequired(true);
340  $form->addItem($fi);
341  }
342  else if (in_array($a_mode, array("select_file")))
343  {
344  // file
345  $ne = new ilNonEditableValueGUI($lng->txt("file"), "");
346 
347  if(isset($_GET["file_ref_id"]))
348  {
349  include_once("./Modules/File/classes/class.ilObjFile.php");
350  $file_obj = new ilObjFile((int) $_GET["file_ref_id"]);
351  if (is_object($file_obj))
352  {
353  // ref id as hidden input
354  $hi = new ilHiddenInputGUI("file_ref_id");
355  $hi->setValue((int) $_GET["file_ref_id"]);
356  $form->addItem($hi);
357 
358  $ne->setValue($file_obj->getTitle());
359  }
360  }
361  else if(isset($_GET["fl_wsp_id"]))
362  {
363  // we need the object id for the instance
364  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceTree.php";
365  $tree = new ilWorkspaceTree($ilUser->getId());
366  $node = $tree->getNodeData((int) $_GET["fl_wsp_id"]);
367 
368  include_once("./Modules/File/classes/class.ilObjFile.php");
369  $file_obj = new ilObjFile($node["obj_id"], false);
370  if (is_object($file_obj))
371  {
372  // ref id as hidden input
373  $hi = new ilHiddenInputGUI("file_ref_id");
374  $hi->setValue("wsp_".(int) $node["obj_id"]);
375  $form->addItem($hi);
376 
377  $ne->setValue($file_obj->getTitle());
378  }
379  $this->tpl->parseCurrentBlock();
380  }
381 
382  $form->addItem($ne);
383  }
384 
385 
386  switch ($a_mode)
387  {
388  case "edit";
389  $ti->setValue($this->content_obj->getListTitle());
390  $si->setValue($this->content_obj->getLanguage());
391  $form->addCommandButton("saveProperties", $lng->txt("save"));
392  $form->addCommandButton("cancelUpdate", $lng->txt("cancel"));
393  $form->setTitle($lng->txt("cont_edit_file_list_properties"));
394  break;
395 
396  case "create":
397  case "select_file":
398  if ($_SESSION["il_text_lang_".$_GET["ref_id"]] != "")
399  {
400  $s_lang = $_SESSION["il_text_lang_".$_GET["ref_id"]];
401  }
402  else
403  {
404  $s_lang = $ilUser->getLanguage();
405  }
406  $si->setValue($s_lang);
407  $form->addCommandButton("create_flst", $lng->txt("save"));
408  $form->addCommandButton("cancelCreate", $lng->txt("cancel"));
409  $form->setTitle($lng->txt("cont_insert_file_list"));
410  break;
411 
412  case "add_file":
413  $form->addCommandButton("insertNewFileItem", $lng->txt("save"));
414  $form->addCommandButton("editFiles", $lng->txt("cancel"));
415  $form->setTitle($lng->txt("cont_insert_file_item"));
416  break;
417  }
418 
419  $form->setFormAction($ilCtrl->getFormAction($this));
420 
421  return $form;
422  }
$_SESSION["AccountId"]
This class represents a selection list property in a property form.
This class represents a property form user interface.
$_GET["client_id"]
This class represents a file property in a property form.
Tree handler for personal workspace.
global $ilCtrl
Definition: ilias.php:18
This class represents a hidden form property in a property form.
getNodeData($a_node_id, $a_tree_pk=null)
get all information of a node.
Class ilObjFile.
This class represents a text property in a property form.
$ilUser
Definition: imgupload.php:18
setMaxLength($a_maxlength)
Set Max Length.
Create styles array
The data for the language used.
This class represents a non editable value in a property form.
for($i=1; $i<=count($kw_cases_sel); $i+=1) $lang
Definition: langwiz.php:349
setRequired($a_required)
Set Required.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insert()

ilPCFileListGUI::insert ( )

insert new file list form

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

References $_GET, $_SESSION, $ilUser, ilPageContentGUI\displayValidationError(), initEditForm(), insertFromRepository(), insertFromWorkspace(), selectFile(), and setTabs().

Referenced by create().

57  {
58  global $ilUser, $ilTabs;
59 
60  if ($_GET["subCmd"] == "insertNew")
61  {
62  $_SESSION["cont_file_insert"] = "insertNew";
63  }
64  if ($_GET["subCmd"] == "insertFromRepository")
65  {
66  $_SESSION["cont_file_insert"] = "insertFromRepository";
67  }
68  if ($_GET["subCmd"] == "insertFromWorkspace")
69  {
70  $_SESSION["cont_file_insert"] = "insertFromWorkspace";
71  }
72  if (($_GET["subCmd"] == "") && $_SESSION["cont_file_insert"] != "")
73  {
74  $_GET["subCmd"] = $_SESSION["cont_file_insert"];
75  }
76 
77  switch ($_GET["subCmd"])
78  {
79  case "insertFromWorkspace":
80  $this->insertFromWorkspace();
81  break;
82 
83  case "insertFromRepository":
84  $this->insertFromRepository();
85  break;
86 
87  case "selectFile":
88  $this->selectFile();
89  break;
90 
91  default:
92  $this->setTabs();
93  $ilTabs->setSubTabActive("cont_new_file");
94 
95  $this->displayValidationError();
96 
97  $form = $this->initEditForm("create");
98  $this->tpl->setContent($form->getHTML());
99  break;
100  }
101 
102  }
insertFromWorkspace($a_cmd="insert")
Insert file from personal workspace.
$_SESSION["AccountId"]
setTabs($a_create=true)
Set Tabs.
initEditForm($a_mode="edit")
Init edit form.
selectFile()
Select file.
$_GET["client_id"]
displayValidationError()
display validation errors
$ilUser
Definition: imgupload.php:18
insertFromRepository($a_cmd="insert")
Insert file from repository.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insertFromRepository()

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

Insert file from repository.

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

References $_GET, $ilCtrl, ilPageContentGUI\$tpl, array, IL_FM_POSITIVE, setItemTabs(), and setTabs().

Referenced by insert(), and newFileItem().

124  {
125  global $ilTabs, $tree, $ilCtrl, $tpl;
126 
127  if ($a_cmd == "insert")
128  {
129  $this->setTabs();
130  }
131  else
132  {
133  $this->setItemTabs($a_cmd);
134  }
135 
136  $ilTabs->setSubTabActive("cont_file_from_repository");
137 
138  include_once "./Services/COPage/classes/class.ilFileSelectorGUI.php";
139 
140  $exp = new ilFileSelectorGUI($this->ctrl->getLinkTarget($this, $a_cmd));
141 
142  if ($_GET["expand"] == "")
143  {
144  $expanded = $tree->readRootId();
145  }
146  else
147  {
148  $expanded = $_GET["expand"];
149  }
150  $exp->setExpand($expanded);
151 
152  $exp->setTargetGet("sel_id");
153  //$this->ctrl->setParameter($this, "target_type", $a_type);
154  $ilCtrl->setParameter($this, "subCmd", "insertFromRepository");
155  $exp->setParamsGet($this->ctrl->getParameterArray($this, $a_cmd));
156 
157  // filter
158  $exp->setFiltered(true);
159  $exp->setFilterMode(IL_FM_POSITIVE);
160  $exp->addFilter("root");
161  $exp->addFilter("cat");
162  $exp->addFilter("grp");
163  $exp->addFilter("fold");
164  $exp->addFilter("crs");
165  $exp->addFilter("file");
166 
167  $sel_types = array('file');
168 
169  $exp->setOutput(0);
170 
171  $tpl->setContent($exp->getOutput());
172  }
setTabs($a_create=true)
Set Tabs.
setItemTabs($a_cmd="")
output tabs
$_GET["client_id"]
const IL_FM_POSITIVE
Select file for being added into file lists.
global $ilCtrl
Definition: ilias.php:18
Create styles array
The data for the language used.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insertFromWorkspace()

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

Insert file from personal workspace.

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

References $_GET, $ilCtrl, $ilUser, ilPageContentGUI\$tpl, IL_FM_POSITIVE, ilWorkspaceExplorer\SEL_TYPE_RADIO, setItemTabs(), and setTabs().

Referenced by insert(), and newFileItem().

178  {
179  global $ilTabs, $tree, $ilCtrl, $tpl, $ilUser;
180 
181  if ($a_cmd == "insert")
182  {
183  $this->setTabs();
184  }
185  else
186  {
187  $this->setItemTabs($a_cmd);
188  }
189 
190  $ilTabs->setSubTabActive("cont_file_from_workspace");
191 
192  // get ws tree
193  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceTree.php";
194  $tree = new ilWorkspaceTree($ilUser->getId());
195 
196  // get access handler
197  include_once("./Services/PersonalWorkspace/classes/class.ilWorkspaceAccessHandler.php");
198  $acc_handler = new ilWorkspaceAccessHandler($tree);
199 
200  // get es explorer
201  include_once("./Services/PersonalWorkspace/classes/class.ilWorkspaceExplorer.php");
203  'filelist_wspexpand', $tree, $acc_handler);
204  $exp->setTargetGet('fl_wsp_id');
205  $exp->setFiltered(false);
206  $exp->removeAllFormItemTypes();
207 
208  // select link
209  $exp->setTypeClickable("file");
210  $ilCtrl->setParameter($this, "subCmd", "selectFile");
211  $exp->setCustomLinkTarget($ilCtrl->getLinkTarget($this, $a_cmd));
212 
213  // filter
214  $exp->setFiltered(true);
215  $exp->setFilterMode(IL_FM_POSITIVE);
216  $exp->addFilter("wsrt");
217  $exp->addFilter("wfld");
218  $exp->addFilter("file");
219 
220  // expand link
221  $ilCtrl->setParameter($this, "subCmd", "insertFromWorkspace");
222  $exp->setParamsGet($ilCtrl->getParameterArray($this, $a_cmd));
223 
224  if($_GET['filelist_wspexpand'] == '')
225  {
226  $expanded = $tree->readRootId();
227  }
228  else
229  {
230  $expanded = $_GET['filelist_wspexpand'];
231  }
232  $exp->setExpand($expanded);
233  $exp->setOutput(0);
234 
235  $tpl->setContent($exp->getOutput());
236  }
setTabs($a_create=true)
Set Tabs.
setItemTabs($a_cmd="")
output tabs
$_GET["client_id"]
Access handler for personal workspace.
const IL_FM_POSITIVE
Tree handler for personal workspace.
global $ilCtrl
Definition: ilias.php:18
$ilUser
Definition: imgupload.php:18
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insertNewFileItem()

ilPCFileListGUI::insertNewFileItem (   $a_file_ref_id = 0)

insert new file item after another item

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

References $_GET, $ilUser, createFileItem(), ilTree\getNodeData(), and newFileItem().

Referenced by newFileItem().

670  {
671  global $ilUser;
672 
673  // from personal workspace
674  if(isset($_GET["fl_wsp_id"]))
675  {
676  // we need the object id for the instance
677  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceTree.php";
678  $tree = new ilWorkspaceTree($ilUser->getId());
679  $node = $tree->getNodeData($_GET["fl_wsp_id"]);
680 
681  include_once("./Modules/File/classes/class.ilObjFile.php");
682  $file_obj = new ilObjFile($node["obj_id"], false);
683  }
684  // upload
685  else if ($a_file_ref_id == 0)
686  {
687  $file_obj = $this->createFileItem();
688  }
689  // from repository
690  else
691  {
692  include_once("./Modules/File/classes/class.ilObjFile.php");
693  $file_obj = new ilObjFile($a_file_ref_id);
694  }
695  if (is_object($file_obj))
696  {
697  $this->content_obj->appendItem($file_obj->getId(),
698  $file_obj->getTitle(), $file_obj->getFileType());
699  $this->updated = $this->pg_obj->update();
700  if ($this->updated === true)
701  {
702  //$this->ctrl->returnToParent($this, "jump".$this->hier_id);
703  $this->ctrl->redirect($this, "editFiles");
704  }
705  }
706 
707  $_GET["subCmd"] = "-";
708  $this->newFileItem();
709  }
newFileItem()
New file item (called, if there is no file item in an existing)
createFileItem()
insert new file item
$_GET["client_id"]
Tree handler for personal workspace.
getNodeData($a_node_id, $a_tree_pk=null)
get all information of a node.
Class ilObjFile.
$ilUser
Definition: imgupload.php:18
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ newFileItem()

ilPCFileListGUI::newFileItem ( )

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

Parameters

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

References $_GET, $_SESSION, ilPageContentGUI\displayValidationError(), initEditForm(), insertFromRepository(), insertFromWorkspace(), insertNewFileItem(), and setItemTabs().

Referenced by insertNewFileItem().

620  {
621  global $ilTabs;
622 
623  if ($_GET["subCmd"] == "insertNew")
624  {
625  $_SESSION["cont_file_insert"] = "insertNew";
626  }
627  if ($_GET["subCmd"] == "insertFromRepository")
628  {
629  $_SESSION["cont_file_insert"] = "insertFromRepository";
630  }
631  if ($_GET["subCmd"] == "insertFromWorkspace")
632  {
633  $_SESSION["cont_file_insert"] = "insertFromWorkspace";
634  }
635  if (($_GET["subCmd"] == "") && $_SESSION["cont_file_insert"] != "")
636  {
637  $_GET["subCmd"] = $_SESSION["cont_file_insert"];
638  }
639 
640  switch ($_GET["subCmd"])
641  {
642  case "insertFromWorkspace":
643  $this->insertFromWorkspace("newFileItem");
644  break;
645 
646  case "insertFromRepository":
647  $this->insertFromRepository("newFileItem");
648  break;
649 
650  case "selectFile":
651  $this->insertNewFileItem($_GET["file_ref_id"]);
652  break;
653 
654  default:
655  $this->setItemTabs("newFileItem");
656  $ilTabs->setSubTabActive("cont_new_file");
657 
658  $this->displayValidationError();
659 
660  $form = $this->initEditForm("add_file");
661  $this->tpl->setContent($form->getHTML());
662  break;
663  }
664  }
insertFromWorkspace($a_cmd="insert")
Insert file from personal workspace.
$_SESSION["AccountId"]
setItemTabs($a_cmd="")
output tabs
initEditForm($a_mode="edit")
Init edit form.
$_GET["client_id"]
insertNewFileItem($a_file_ref_id=0)
insert new file item after another item
displayValidationError()
display validation errors
insertFromRepository($a_cmd="insert")
Insert file from repository.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ savePositions()

ilPCFileListGUI::savePositions ( )

Save positions of file items.

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

References $_POST, and $ilCtrl.

554  {
555  global $ilCtrl;
556 
557  if (is_array($_POST["position"]))
558  {
559  $this->content_obj->savePositions($_POST["position"]);
560  }
561  $this->updated = $this->pg_obj->update();
562  $ilCtrl->redirect($this, "editFiles");
563  }
global $ilCtrl
Definition: ilias.php:18
$_POST["username"]

◆ savePositionsAndClasses()

ilPCFileListGUI::savePositionsAndClasses ( )

Save positions of file items and style classes.

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

References $_POST, and $ilCtrl.

569  {
570  global $ilCtrl;
571 
572  if (is_array($_POST["position"]))
573  {
574  $this->content_obj->savePositions($_POST["position"]);
575  }
576  if (is_array($_POST["class"]))
577  {
578  $this->content_obj->saveStyleClasses($_POST["class"]);
579  }
580  $this->updated = $this->pg_obj->update();
581  $ilCtrl->redirect($this, "editFiles");
582  }
global $ilCtrl
Definition: ilias.php:18
$_POST["username"]

◆ saveProperties()

ilPCFileListGUI::saveProperties ( )

save table properties in db and return to page edit screen

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

References $_POST, edit(), and ilUtil\stripSlashes().

429  {
430  $this->content_obj->setListTitle(ilUtil::stripSlashes($_POST["flst_title"]),
431  ilUtil::stripSlashes($_POST["flst_language"]));
432  $this->updated = $this->pg_obj->update();
433  if ($this->updated === true)
434  {
435  $this->ctrl->returnToParent($this, "jump".$this->hier_id);
436  }
437  else
438  {
439  $this->pg_obj->addHierIDs();
440  $this->edit();
441  }
442  }
edit()
edit properties form
static stripSlashes($a_str, $a_strip_html=true, $a_allow="")
strip slashes if magic qoutes is enabled
$_POST["username"]
+ Here is the call graph for this function:

◆ selectFile()

ilPCFileListGUI::selectFile ( )

Select file.

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

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

Referenced by insert().

108  {
109  global $ilTabs, $ilUser;
110 
111  $this->setTabs();
112  $ilTabs->setSubTabActive("cont_file_from_repository");
113 
114  $this->displayValidationError();
115  $form = $this->initEditForm("select_file");
116 
117  $this->tpl->setContent($form->getHTML());
118  }
setTabs($a_create=true)
Set Tabs.
initEditForm($a_mode="edit")
Init edit form.
displayValidationError()
display validation errors
$ilUser
Definition: imgupload.php:18
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ setItemTabs()

ilPCFileListGUI::setItemTabs (   $a_cmd = "")

output tabs

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

References $ilCtrl, and $ilSetting.

Referenced by insertFromRepository(), insertFromWorkspace(), and newFileItem().

753  {
754  global $ilTabs, $ilCtrl, $ilSetting;
755 
756  $ilTabs->addTarget("cont_back",
757  $this->ctrl->getParentReturn($this), "",
758  "");
759 
760  if ($a_cmd != "")
761  {
762  $ilCtrl->setParameter($this, "subCmd", "insertNew");
763  $ilTabs->addSubTabTarget("cont_new_file",
764  $ilCtrl->getLinkTarget($this, $a_cmd), $a_cmd);
765 
766  $ilCtrl->setParameter($this, "subCmd", "insertFromRepository");
767  $ilTabs->addSubTabTarget("cont_file_from_repository",
768  $ilCtrl->getLinkTarget($this, $a_cmd), $a_cmd);
769  $ilCtrl->setParameter($this, "subCmd", "");
770 
771  if(!$ilSetting->get("disable_personal_workspace") &&
772  !$ilSetting->get("disable_wsp_files"))
773  {
774  $ilCtrl->setParameter($this, "subCmd", "insertFromWorkspace");
775  $ilTabs->addSubTabTarget("cont_file_from_workspace",
776  $ilCtrl->getLinkTarget($this, $a_cmd), $a_cmd);
777  $ilCtrl->setParameter($this, "subCmd", "");
778  }
779  }
780  }
global $ilCtrl
Definition: ilias.php:18
global $ilSetting
Definition: privfeed.php:17
+ Here is the caller graph for this function:

◆ setTabs()

ilPCFileListGUI::setTabs (   $a_create = true)

Set Tabs.

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

References $cmd, $ilCtrl, $ilSetting, and ilPageContentGUI\$lng.

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

465  {
466  global $ilTabs, $ilCtrl, $lng, $ilSetting;
467 
468  if ($a_create)
469  {
470  $cmd = "insert";
471 
472  $ilCtrl->setParameter($this, "subCmd", "insertNew");
473  $ilTabs->addSubTabTarget("cont_new_file",
474  $ilCtrl->getLinkTarget($this, $cmd), $cmd);
475 
476  $ilCtrl->setParameter($this, "subCmd", "insertFromRepository");
477  $ilTabs->addSubTabTarget("cont_file_from_repository",
478  $ilCtrl->getLinkTarget($this, $cmd), $cmd);
479  $ilCtrl->setParameter($this, "subCmd", "");
480 
481  if(!$ilSetting->get("disable_personal_workspace") &&
482  !$ilSetting->get("disable_wsp_files"))
483  {
484  $ilCtrl->setParameter($this, "subCmd", "insertFromWorkspace");
485  $ilTabs->addSubTabTarget("cont_file_from_workspace",
486  $ilCtrl->getLinkTarget($this, $cmd), $cmd);
487  $ilCtrl->setParameter($this, "subCmd", "");
488  }
489  }
490  else
491  {
492  $ilTabs->setBackTarget($lng->txt("pg"),
493  $this->ctrl->getParentReturn($this));
494 
495  $ilTabs->addTarget("cont_ed_edit_files",
496  $ilCtrl->getLinkTarget($this, "editFiles"), "editFiles",
497  get_class($this));
498 
499  $ilTabs->addTarget("cont_ed_edit_prop",
500  $ilCtrl->getLinkTarget($this, "edit"), "edit",
501  get_class($this));
502 
503  }
504  }
$cmd
Definition: sahs_server.php:35
global $ilCtrl
Definition: ilias.php:18
global $ilSetting
Definition: privfeed.php:17
+ Here is the caller graph for this function:

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