ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
class.ilObjWorkspaceFolderGUI.php
Go to the documentation of this file.
1 <?php
2 
3 /* Copyright (c) 1998-2009 ILIAS open source, Extended GPL, see docs/LICENSE */
4 
5 require_once "./Services/Object/classes/class.ilObject2GUI.php";
6 
19 {
20  function getType()
21  {
22  return "wfld";
23  }
24 
25  function setTabs($a_show_settings = true)
26  {
27  global $lng, $ilHelp;
28 
29  $ilHelp->setScreenIdComponent("wfld");
30 
31  $this->ctrl->setParameter($this,"wsp_id",$this->node_id);
32 
33  $this->tabs_gui->addTab("wsp", $lng->txt("wsp_tab_personal"),
34  $this->ctrl->getLinkTarget($this, ""));
35 
36  $this->ctrl->setParameterByClass("ilObjWorkspaceRootFolderGUI", "wsp_id",
37  $this->getAccessHandler()->getTree()->getRootId());
38 
39  $this->tabs_gui->addTab("share", $lng->txt("wsp_tab_shared"),
40  $this->ctrl->getLinkTargetByClass("ilObjWorkspaceRootFolderGUI", "shareFilter"));
41 
42  $this->tabs_gui->addTab("ownership", $lng->txt("wsp_tab_ownership"),
43  $this->ctrl->getLinkTargetByClass(array("ilObjWorkspaceRootFolderGUI", "ilObjectOwnershipManagementGUI"), "listObjects"));
44 
45  if(!$this->ctrl->getNextClass($this))
46  {
47  if(stristr($this->ctrl->getCmd(), "share"))
48  {
49  $this->tabs_gui->activateTab("share");
50  }
51  else
52  {
53  $this->tabs_gui->activateTab("wsp");
54 
55  if($a_show_settings)
56  {
57  if ($this->checkPermissionBool("read"))
58  {
59  $this->tabs_gui->addSubTab("content",
60  $lng->txt("content"),
61  $this->ctrl->getLinkTarget($this, ""));
62  }
63 
64  if ($this->checkPermissionBool("write"))
65  {
66  $this->tabs_gui->addSubTab("settings",
67  $lng->txt("settings"),
68  $this->ctrl->getLinkTarget($this, "edit"));
69  }
70  }
71  }
72  }
73  }
74 
75  function executeCommand()
76  {
77  $next_class = $this->ctrl->getNextClass($this);
78  $cmd = $this->ctrl->getCmd();
79 
80  switch($next_class)
81  {
82  case "ilcommonactiondispatchergui":
83  include_once("Services/Object/classes/class.ilCommonActionDispatcherGUI.php");
85  $this->ctrl->forwardCommand($gui);
86  break;
87 
88  case "ilobjectownershipmanagementgui":
89  $this->prepareOutput();
90  $this->tabs_gui->activateTab("ownership");
91  include_once("Services/Object/classes/class.ilObjectOwnershipManagementGUI.php");
92  $gui = new ilObjectOwnershipManagementGUI();
93  $this->ctrl->forwardCommand($gui);
94  break;
95 
96  default:
97  $this->prepareOutput();
98  if($this->type != "wsrt")
99  {
100  $this->addHeaderAction();
101  }
102  if(!$cmd)
103  {
104  $cmd = "render";
105  }
106  $this->$cmd();
107  break;
108  }
109 
110  return true;
111  }
112 
113  protected function initCreationForms($a_new_type)
114  {
115  $forms = array(
116  self::CFORM_NEW => $this->initCreateForm($a_new_type)
117  );
118 
119  return $forms;
120  }
121 
125  function render()
126  {
127  global $tpl, $ilUser, $ilTabs, $ilCtrl;
128 
129  unset($_SESSION['clipboard']['wsp2repo']);
130 
131  // add new item
132  include_once "Services/Object/classes/class.ilObjectAddNewItemGUI.php";
133  $gui = new ilObjectAddNewItemGUI($this->node_id);
134  $gui->setMode(ilObjectDefinition::MODE_WORKSPACE);
135  $gui->setCreationUrl($ilCtrl->getLinkTarget($this, "create"));
136  $gui->render();
137 
138  include_once "Services/Object/classes/class.ilObjectListGUI.php";
140  $this->ctrl->getLinkTargetByClass(array("ilcommonactiondispatchergui", "ilnotegui"), "", "", true, false),
141  $this->ctrl->getLinkTargetByClass(array("ilcommonactiondispatchergui", "iltagginggui"), "", "", true, false));
142 
143  include_once "Modules/WorkspaceFolder/classes/class.ilObjWorkspaceFolderTableGUI.php";
144  $table = new ilObjWorkspaceFolderTableGUI($this, "render", $this->node_id, $this->getAccessHandler());
145  $tpl->setContent($table->getHTML());
146 
147  include_once "Modules/WorkspaceFolder/classes/class.ilWorkspaceFolderExplorer.php";
148  $exp = new ilWorkspaceFolderExplorer($this->ctrl->getLinkTarget($this), $ilUser->getId());
149 
150  if($this->node_id != $exp->getRoot())
151  {
152  $ilTabs->activateSubTab("content");
153  }
154 
155  $left = "";
156 
157  // sub-folders
158  if($this->node_id != $exp->getRoot() || $exp->hasFolders($this->node_id))
159  {
160  $exp->setTargetGet("wsp_id");
161  $exp->setSessionExpandVariable('wspexpand');
162  $exp->setExpand($this->node_id);
163  $exp->setExpandTarget($this->ctrl->getLinkTarget($this));
164 
165  if ($_GET["wspexpand"] != "")
166  {
167  $exp->setExpand($_GET["wspexpand"]);
168  }
169 
170  $exp->highlightNode($this->node_id);
171  $exp->setOutput(0);
172 
173  $left .= $exp->getOutput();
174  }
175 
176  $tpl->setLeftNavContent($left);
177  }
178 
179  function edit()
180  {
181  parent::edit();
182 
183  $this->tabs_gui->activateTab("wsp");
184  $this->tabs_gui->activateSubTab("settings");
185  }
186 
187  function update()
188  {
189  parent::update();
190 
191  $this->tabs_gui->activateTab("wsp");
192  $this->tabs_gui->activateSubTab("settings");
193  }
194 
200  function cut()
201  {
202  if (!$_REQUEST["item_ref_id"])
203  {
204  ilUtil::sendFailure($this->lng->txt("no_checkbox"), true);
205  $this->ctrl->redirect($this);
206  }
207 
208  $current_node = $_REQUEST["item_ref_id"];
209  $parent_node = $this->tree->getParentId($current_node);
210 
211  // on cancel or fail we return to parent node
212  $this->ctrl->setParameter($this, "wsp_id", $parent_node);
213 
214  // check permission
215  $no_cut = array();
216  foreach ($this->tree->getSubTree($this->tree->getNodeData($current_node)) as $node)
217  {
218  if (!$this->checkPermissionBool("delete", "", "", $node["wsp_id"]))
219  {
220  $obj = ilObjectFactory::getInstanceByObjId($node["obj_id"]);
221  $no_cut[$node["wsp_id"]] = $obj->getTitle();
222  unset($obj);
223  }
224  }
225  if (count($no_cut))
226  {
227  ilUtil::sendFailure($this->lng->txt("msg_no_perm_cut")." ".implode(',', $no_cut), true);
228  $this->ctrl->redirect($this);
229  }
230 
231  // open current position
232  // using the explorer session storage directly is basically a hack
233  // as we do not use setExpanded() [see below]
234  $_SESSION['paste_cut_wspexpand'] = array();
235  foreach((array)$this->tree->getPathId($parent_node) as $node_id)
236  {
237  $_SESSION['paste_cut_wspexpand'][] = $node_id;
238  }
239 
240  // remember source node
241  $_SESSION['clipboard']['source_id'] = $current_node;
242  $_SESSION['clipboard']['cmd'] = 'cut';
243 
244  return $this->showMoveIntoObjectTree();
245  }
246 
253  {
254  $_SESSION['clipboard']['wsp2repo'] = true;
255  $this->cut();
256  }
257 
263  function copy()
264  {
265  global $ilUser;
266 
267  if (!$_REQUEST["item_ref_id"])
268  {
269  ilUtil::sendFailure($this->lng->txt("no_checkbox"), true);
270  $this->ctrl->redirect($this);
271  }
272 
273  $current_node = $_REQUEST["item_ref_id"];
274  $owner = $this->tree->lookupOwner($current_node);
275  if($owner == $ilUser->getId())
276  {
277  $parent_node = $this->tree->getParentId($current_node);
278 
279  // on cancel or fail we return to parent node
280  $this->ctrl->setParameter($this, "wsp_id", $parent_node);
281 
282  // open current position
283  // using the explorer session storage directly is basically a hack
284  // as we do not use setExpanded() [see below]
285  $_SESSION['paste_copy_wspexpand'] = array();
286  foreach((array)$this->tree->getPathId($parent_node) as $node_id)
287  {
288  $_SESSION['paste_copy_wspexpand'][] = $node_id;
289  }
290  }
291  else
292  {
293  // see copyShared()
294  ilUtil::sendFailure($this->lng->txt('permission_denied'), true);
295  $this->ctrl->redirect($this);
296  }
297 
298  // remember source node
299  $_SESSION['clipboard']['source_id'] = $current_node;
300  $_SESSION['clipboard']['cmd'] = 'copy';
301 
302  return $this->showMoveIntoObjectTree();
303  }
304 
305  function copyShared()
306  {
307  if (!$_REQUEST["item_ref_id"])
308  {
309  $this->ctrl->redirect($this, "share");
310  }
311 
312  $current_node = $_REQUEST["item_ref_id"];
313  $handler = $this->getAccessHandler();
314 
315  // see ilSharedRessourceGUI::hasAccess()
316  if($handler->checkAccess("read", "", $current_node))
317  {
318  // remember source node
319  $_SESSION['clipboard']['source_id'] = $current_node;
320  $_SESSION['clipboard']['cmd'] = 'copy';
321  $_SESSION['clipboard']['shared'] = true;
322 
323  return $this->showMoveIntoObjectTree();
324  }
325  else
326  {
327  $perms = $handler->getPermissions($current_node);
329  {
330  return $this->passwordForm($current_node);
331  }
332  }
333 
334  ilUtil::sendFailure($this->lng->txt('permission_denied'), true);
335  $this->ctrl->redirect($this, "share");
336  }
337 
344  {
345  $_SESSION['clipboard']['wsp2repo'] = true;
346  $this->copy();
347  }
348 
353  {
354  global $ilTabs, $tree;
355 
356  $ilTabs->clearTargets();
357 
358  if(!$_SESSION['clipboard']['shared'])
359  {
360  $ilTabs->setBackTarget($this->lng->txt('back'),
361  $this->ctrl->getLinkTarget($this));
362  }
363  else
364  {
365  $ilTabs->setBackTarget($this->lng->txt('back'),
366  $this->ctrl->getLinkTarget($this, 'share'));
367  }
368 
369  $mode = $_SESSION['clipboard']['cmd'];
370 
371  ilUtil::sendInfo($this->lng->txt('msg_'.$mode.'_clipboard'));
372 
373  $this->tpl->addBlockfile('ADM_CONTENT', 'adm_content',
374  'tpl.paste_into_multiple_objects.html', "Services/Object");
375 
376  // move/copy in personal workspace
377  if(!$_SESSION['clipboard']['wsp2repo'])
378  {
379  require_once 'Services/PersonalWorkspace/classes/class.ilWorkspaceExplorer.php';
381  'paste_'.$mode.'_wspexpand', $this->tree, $this->getAccessHandler());
382  $exp->setTargetGet('wsp_id');
383 
384  if($_GET['paste_'.$mode.'_wspexpand'] == '')
385  {
386  // not really used as session is already set [see above]
387  $expanded = $this->tree->readRootId();
388  }
389  else
390  {
391  $expanded = $_GET['paste_'.$mode.'_wspexpand'];
392  }
393 
394  }
395  // move/copy to repository
396  else
397  {
398  require_once './Services/Object/classes/class.ilPasteIntoMultipleItemsExplorer.php';
400  '', 'paste_'.$mode.'_repexpand');
401  $exp->setTargetGet('ref_id');
402 
403  if($_GET['paste_'.$mode.'_repexpand'] == '')
404  {
405  $expanded = $tree->readRootId();
406  }
407  else
408  {
409  $expanded = $_GET['paste_'.$mode.'_repexpand'];
410  }
411  }
412 
413  $exp->setCheckedItems(array((int)$_POST['node']));
414  $exp->setExpandTarget($this->ctrl->getLinkTarget($this, 'showMoveIntoObjectTree'));
415  $exp->setPostVar('node');
416  $exp->setExpand($expanded);
417  $exp->setOutput(0);
418 
419  $this->tpl->setVariable('OBJECT_TREE', $exp->getOutput());
420  unset($exp);
421 
422  $this->tpl->setVariable('FORM_TARGET', '_top');
423  $this->tpl->setVariable('FORM_ACTION',
424  $this->ctrl->getFormAction($this, 'performPasteIntoMultipleObjects'));
425 
426  $this->tpl->setVariable('CMD_SUBMIT', 'performPasteIntoMultipleObjects');
427  $this->tpl->setVariable('TXT_SUBMIT', $this->lng->txt('paste'));
428  }
429 
434  {
435  global $ilUser;
436 
437  $mode = $_SESSION['clipboard']['cmd'];
438  $source_node_id = $_SESSION['clipboard']['source_id'];
439  $target_node_id = $_REQUEST['node'];
440 
441  if(!$source_node_id)
442  {
443  ilUtil::sendFailure($this->lng->txt('select_at_least_one_object'), true);
444  $this->ctrl->redirect($this);
445  }
446  if(!$target_node_id)
447  {
448  ilUtil::sendFailure($this->lng->txt('select_at_least_one_object'), true);
449  $this->ctrl->redirect($this, "showMoveIntoObjectTree");
450  }
451 
452  // object instances
453  $source_obj_id = $this->tree->lookupObjectId($source_node_id);
454  $source_object = ilObjectFactory::getInstanceByObjId($source_obj_id);
455 
456  if(!$_SESSION['clipboard']['wsp2repo'])
457  {
458  $target_obj_id = $this->tree->lookupObjectId($target_node_id);
459  }
460  else
461  {
462  $target_obj_id = ilObject::_lookupObjId($target_node_id);
463  }
464  $target_object = ilObjectFactory::getInstanceByObjId($target_obj_id);
465 
466 
467  // sanity checks
468 
469  $fail = array();
470 
471  if($source_node_id == $target_node_id)
472  {
473  $fail[] = sprintf($this->lng->txt('msg_obj_exists_in_folder'),
474  $source_object->getTitle(), $target_object->getTitle());
475  }
476 
477  if(!in_array($source_object->getType(), array_keys($target_object->getPossibleSubObjects())))
478  {
479  $fail[] = sprintf($this->lng->txt('msg_obj_may_not_contain_objects_of_type'),
480  $target_object->getTitle(), $source_object->getType());
481  }
482 
483  // if object is shared permission to copy has been checked above
484  $owner = $this->tree->lookupOwner($source_node_id);
485  if($mode == "copy" && $ilUser->getId() == $owner && !$this->checkPermissionBool('copy', '', '', $source_node_id))
486  {
487  $fail[] = $this->lng->txt('permission_denied');
488  }
489 
490  if(!$_SESSION['clipboard']['wsp2repo'])
491  {
492  if($mode == "cut" && $this->tree->isGrandChild($source_node_id, $target_node_id))
493  {
494  $fail[] = sprintf($this->lng->txt('msg_paste_object_not_in_itself'),
495  $source_object->getTitle());
496  }
497  }
498 
499  if ($_SESSION['clipboard']['wsp2repo'] == true) // see #22959
500  {
501  global $ilAccess;
502  if (!$ilAccess->checkAccess("create", "", $target_node_id, $source_object->getType()))
503  {
504  $fail[] = sprintf($this->lng->txt('msg_no_perm_paste_object_in_folder'),
505  $source_object->getTitle(), $target_object->getTitle());
506  }
507  }
508  else
509  {
510  if (!$this->checkPermissionBool('create', '', $source_object->getType(), $target_node_id))
511  {
512  $fail[] = sprintf($this->lng->txt('msg_no_perm_paste_object_in_folder'),
513  $source_object->getTitle(), $target_object->getTitle());
514  }
515  }
516 
517  if(sizeof($fail))
518  {
519  ilUtil::sendFailure(implode("<br />", $fail), true);
520  $this->ctrl->redirect($this);
521  }
522 
523 
524  // move the node
525  if($mode == "cut")
526  {
527  if(!$_SESSION['clipboard']['wsp2repo'])
528  {
529  $this->tree->moveTree($source_node_id, $target_node_id);
530  }
531  else
532  {
533  $parent_id = $this->tree->getParentId($source_node_id);
534 
535  // remove from personal workspace
536  $this->getAccessHandler()->removePermission($source_node_id);
537  $this->tree->deleteReference($source_node_id);
538  $source_node = $this->tree->getNodeData($source_node_id);
539  $this->tree->deleteTree($source_node);
540 
541  // add to repository
542  $source_object->createReference();
543  $source_object->putInTree($target_node_id);
544  $source_object->setPermissions($target_node_id);
545 
546  $source_node_id = $parent_id;
547  }
548  }
549  // copy the node
550  else if($mode == "copy")
551  {
552  include_once('Services/CopyWizard/classes/class.ilCopyWizardOptions.php');
554  $wizard_options = ilCopyWizardOptions::_getInstance($copy_id);
555 
556  if(!$_SESSION['clipboard']['wsp2repo'])
557  {
558  $wizard_options->disableTreeCopy();
559  }
560  $wizard_options->saveOwner($ilUser->getId());
561  $wizard_options->saveRoot($source_node_id);
562  $wizard_options->read();
563 
564  $new_obj = $source_object->cloneObject($target_node_id, $copy_id);
565 
566  // insert into workspace tree
567  if($new_obj && !$_SESSION['clipboard']['wsp2repo'])
568  {
569  $new_obj_node_id = $this->tree->insertObject($target_node_id, $new_obj->getId());
570  $this->getAccessHandler()->setPermissions($target_node_id, $new_obj_node_id);
571  }
572 
573  $wizard_options->deleteAll();
574  }
575 
576  // redirect to target if not repository
577  if(!$_SESSION['clipboard']['wsp2repo'])
578  {
579  $redirect_node = $target_node_id;
580  }
581  else
582  {
583  // reload current folder
584  $redirect_node = $this->node_id;
585  }
586 
587  unset($_SESSION['clipboard']['cmd']);
588  unset($_SESSION['clipboard']['source_id']);
589  unset($_SESSION['clipboard']['wsp2repo']);
590  unset($_SESSION['clipboard']['shared']);
591 
592  // #17746
593  if($mode == 'cut')
594  {
595  ilUtil::sendSuccess($this->lng->txt('msg_cut_copied'), true);
596  }
597  else
598  {
599  ilUtil::sendSuccess($this->lng->txt('msg_cloned'), true);
600  }
601 
602  $this->ctrl->setParameter($this, "wsp_id", $redirect_node);
603  $this->ctrl->redirect($this);
604  }
605 
606  function shareFilter()
607  {
608  $this->share(false);
609  }
610 
611  function share($a_load_data = true)
612  {
613  global $tpl;
614 
615  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceShareTableGUI.php";
616  $tbl = new ilWorkspaceShareTableGUI($this, "share", $this->getAccessHandler(), $this->node_id, $a_load_data);
617  $tpl->setContent($tbl->getHTML());
618  }
619 
620  function applyShareFilter()
621  {
622  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceShareTableGUI.php";
623  $tbl = new ilWorkspaceShareTableGUI($this, "share", $this->getAccessHandler(), $this->node_id);
624  $tbl->resetOffset();
625  $tbl->writeFilterToSession();
626 
627  $this->share();
628  }
629 
630  function resetShareFilter()
631  {
632  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceShareTableGUI.php";
633  $tbl = new ilWorkspaceShareTableGUI($this, "share", $this->getAccessHandler(), $this->node_id);
634  $tbl->resetOffset();
635  $tbl->resetFilter();
636 
637  $this->shareFilter();
638  }
639 
640  protected function passwordForm($a_node_id, $form = null)
641  {
642  global $tpl, $lng, $ilTabs;
643 
644  $tpl->setTitle($lng->txt("wsp_password_protected_resource"));
645  $tpl->setDescription($lng->txt("wsp_password_protected_resource_info"));
646 
647  $ilTabs->clearTargets();
648  $ilTabs->setBackTarget($lng->txt("back"),
649  $this->ctrl->getLinkTarget($this, "share"));
650 
651  if(!$form)
652  {
653  $form = $this->initPasswordForm($a_node_id);
654  }
655 
656  $tpl->setContent($form->getHTML());
657  }
658 
659  protected function initPasswordForm($a_node_id)
660  {
661  global $ilCtrl, $lng;
662 
663  $this->ctrl->setParameter($this, "item_ref_id", $a_node_id);
664 
665  $object_data = $this->getAccessHandler()->getObjectDataFromNode($a_node_id);
666 
667  include_once "Services/Form/classes/class.ilPropertyFormGUI.php";
668  $form = new ilPropertyFormGUI();
669  $form->setFormAction($ilCtrl->getFormAction($this, "checkPassword"));
670  $form->setTitle($lng->txt("wsp_password_for").": ".$object_data["title"]);
671 
672  $password = new ilPasswordInputGUI($lng->txt("password"), "password");
673  $password->setRetype(false);
674  $password->setRequired(true);
675  $password->setSkipSyntaxCheck(true);
676  $form->addItem($password);
677 
678  $form->addCommandButton("checkPassword", $lng->txt("submit"));
679  $form->addCommandButton("share", $lng->txt("cancel"));
680 
681  return $form;
682  }
683 
684  protected function checkPassword()
685  {
686  global $lng;
687 
688  $node_id = $_REQUEST["item_ref_id"];
689  if(!$node_id)
690  {
691  $this->ctrl->redirect($this, "share");
692  }
693 
694  $form = $this->initPasswordForm($node_id);
695  if($form->checkInput())
696  {
697  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceAccessHandler.php";
699  $input = md5($form->getInput("password"));
700  if($input == $password)
701  {
702  // we save password and start over
704 
705  $this->ctrl->setParameter($this, "item_ref_id", $node_id);
706  $this->ctrl->redirect($this, "copyShared");
707  }
708  else
709  {
710  $item = $form->getItemByPostVar("password");
711  $item->setAlert($lng->txt("wsp_invalid_password"));
712  ilUtil::sendFailure($lng->txt("form_input_not_valid"));
713  }
714  }
715 
716  $form->setValuesByPost();
717  $this->passwordForm($node_id, $form);
718  }
719 
725  public static function _goto($a_target)
726  {
727  $id = explode("_", $a_target);
728 
729  $_GET["baseClass"] = "ilsharedresourceGUI";
730  $_GET["wsp_id"] = $id[0];
731  include("ilias.php");
732  exit;
733  }
734 
739  {
740  global $ilCtrl;
741 
742  include_once "Services/PersonalWorkspace/classes/class.ilWorkspaceShareTableGUI.php";
743  $tbl = new ilWorkspaceShareTableGUI($this, "share", $this->getAccessHandler(), $this->node_id);
744  $tbl->resetOffset();
745  $tbl->resetFilter();
746  $_POST["user"] = $_GET["user"];
747  $tbl->writeFilterToSession();
748  $this->share();
749  }
750 
751 }
752 
753 ?>
static sendSuccess($a_info="", $a_keep=false)
Send Success Message to Screen.
$_SESSION["AccountId"]
Class ilObjWorkspaceFolderGUI.
This class represents a property form user interface.
checkPermissionBool($a_perm, $a_cmd="", $a_type="", $a_node_id=null)
Check permission.
setTargetGet($a_target_get)
set the varname in Get-string public
New implementation of ilObjectGUI.
$_GET["client_id"]
$tbl
Definition: example_048.php:81
getAccessHandler()
Get access handler.
$cmd
Definition: sahs_server.php:35
Class ilObjectOwnershipManagementGUI.
setRetype($a_val)
Set retype on/off.
static _goto($a_target)
Deep link.
showMoveIntoObjectTree()
Move node: select target (via explorer)
global $ilCtrl
Definition: ilias.php:18
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
Workspace share handler table GUI class.
static _getInstance($a_copy_id)
Get instance of copy wizard options.
static prepareJsLinks($a_redraw_url, $a_notes_url, $a_tags_url, $a_tpl=null)
Insert js/ajax links into template.
static _lookupObjId($a_id)
This class represents a password property in a property form.
$ilUser
Definition: imgupload.php:18
static _allocateCopyId()
Allocate a copy for further entries.
initCreateForm($a_new_type)
Init object creation form.
static getInstanceByObjId($a_obj_id, $stop_on_error=true)
get an instance of an Ilias object by object id
Create styles array
The data for the language used.
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.
static keepSharedSessionPassword($a_node_id, $a_password)
performPasteIntoMultipleObjects()
Move node: target has been selected, execute.
copy_to_repository()
Copy node preparation (to repository)
Render add new item selector.
Class ilObjWorkspaceFolderTableGUI.
listSharedResourcesOfOtherUser()
Entry point for awareness tool.
prepareOutput($a_show_subobjects=true)
cut_for_repository()
Move node preparation (to repository)
addHeaderAction()
Add header action menu.
$_POST["username"]
static getInstanceFromAjaxCall()
(Re-)Build instance from ajax call