24 require_once 
"./Services/Container/classes/class.ilContainer.php";
 
   47                 parent::__construct($a_id,$a_call_by_reference);
 
   48                 $this->lng->loadLanguageModule(
'fold');
 
   53                 $this->folder_tree =& $a_tree;
 
   69                 include_once(
'Services/Tracking/classes/class.ilLPObjSettings.php');
 
   71                 $obj_settings->cloneSettings($new_obj->getId());
 
   85                 if (!is_object($this->folder_tree))
 
   87                         $this->folder_tree =& $tree; 
 
   93                         $this->folder_tree->insertNode($this->
getRefId(), $a_parent);
 
   98                         $this->folder_tree->insertNode($this->
getId(), $a_parent);
 
  114                 include_once(
'Services/Object/classes/class.ilObjectActivation.php');
 
  129                 global $rbacsystem, $tree, $ilAccess;
 
  131                 $tmpdir = $tmpdir.DIRECTORY_SEPARATOR.ilUtil::getASCIIFilename(
$title);
 
  134                 $subtree = $tree->getChildsByTypeFilter($refid, array(
"fold",
"file"));
 
  136                 foreach ($subtree as $child) 
 
  138                         if (!$ilAccess->checkAccess(
"read", 
"", $child[
"ref_id"]))
 
  146                         if ($child[
"type"] == 
"fold")
 
  150                                 $newFilename = $tmpdir.DIRECTORY_SEPARATOR.ilUtil::getASCIIFilename($child[
"title"]);
 
  153                                 if (!copy ($oldFilename, $newFilename))
 
  155                                         throw new ilFileException(
"Could not copy ".$oldFilename.
" to ".$newFilename);
 
  157                                 touch($newFilename, filectime($oldFilename));                                                           
 
  164                 global 
$lng, $rbacsystem, $ilAccess;
 
  165                 include_once 
"./Services/Utilities/classes/class.ilUtil.php";
 
  166                 include_once 
'Modules/File/classes/class.ilObjFile.php';
 
  167                 include_once 
'Modules/File/classes/class.ilFileException.php';
 
  168                 if (!$ilAccess->checkAccess(
"read", 
"", $this->getRefId()))
 
  170                         $this->ilErr->raiseError(get_class($this).
"::downloadFolder(): missing read permission!",$this->ilErr->WARNING);
 
  174                         $this->ilErr->raiseError(get_class($this).
"::downloadFolder(): object is trashed!",$this->ilErr->WARNING);
 
  180                 $basename = ilUtil::getAsciiFilename($this->
getTitle());
 
  181                 $deliverFilename = $basename.
".zip";
 
  182                 $zipbasedir = $tmpdir.DIRECTORY_SEPARATOR.$basename;
 
  183                 $tmpzipfile = $tmpdir.DIRECTORY_SEPARATOR.$deliverFilename;
 
  207                 $container_ref_id = $tree->checkForParentType($this->ref_id, 
'grp');
 
  208                 if(!$container_ref_id)
 
  210                         $container_ref_id = $tree->checkForParentType($this->ref_id, 
'crs');
 
  212                 if($container_ref_id)
 
  214                         include_once(
"./Modules/Course/classes/class.ilObjCourseAccess.php");
 
  233                 include_once 
'./Services/Object/classes/class.ilObjectActivation.php';
 
  251                 include_once(
'./Services/Container/classes/class.ilContainerSortingSettings.php');