24 require_once
"./Services/Container/classes/class.ilContainer.php";
44 public function __construct($a_id = 0,$a_call_by_reference =
true)
47 parent::__construct($a_id,$a_call_by_reference);
48 $this->lng->loadLanguageModule(
'fold');
53 $this->folder_tree =& $a_tree;
64 public function cloneObject($a_target_id,$a_copy_id = 0, $a_omit_tree =
false)
66 $new_obj = parent::cloneObject($a_target_id,$a_copy_id, $a_omit_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);
112 parent::cloneDependencies($a_target_id,$a_copy_id);
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
'Modules/File/classes/class.ilObjFile.php';
166 include_once
'Modules/File/classes/class.ilFileException.php';
167 if (!$ilAccess->checkAccess(
"read",
"", $this->getRefId()))
169 $this->ilErr->raiseError(get_class($this).
"::downloadFolder(): missing read permission!",$this->ilErr->WARNING);
173 $this->ilErr->raiseError(get_class($this).
"::downloadFolder(): object is trashed!",$this->ilErr->WARNING);
179 $basename = ilUtil::getAsciiFilename($this->
getTitle());
180 $deliverFilename = $basename.
".zip";
181 $zipbasedir = $tmpdir.DIRECTORY_SEPARATOR.$basename;
182 $tmpzipfile = $tmpdir.DIRECTORY_SEPARATOR.$deliverFilename;
206 $container_ref_id = $tree->checkForParentType($this->ref_id,
'grp');
207 if(!$container_ref_id)
209 $container_ref_id = $tree->checkForParentType($this->ref_id,
'crs');
211 if($container_ref_id)
213 include_once(
"./Modules/Course/classes/class.ilObjCourseAccess.php");
232 include_once
'./Services/Object/classes/class.ilObjectActivation.php';
250 include_once(
'./Services/Container/classes/class.ilContainerSortingSettings.php');
__construct($a_id=0, $a_call_by_reference=true)
Constructor public.
withReferences()
determines wehter objects are referenced or not (got ref ids or not)
putInTree($a_parent)
insert folder into grp_tree
static _isInTrash($a_ref_id)
checks wether object is in trash
static sendInfo($a_info="", $a_keep=false)
Send Info Message to Screen.
static recurseFolder($refid, $title, $tmpdir)
private functions which iterates through all folders and files and create an according file structure...
static addAdditionalSubItemInformation(array &$a_item)
Parse item data for list entries.
getId()
get object id public
read()
Overwritten read method.
cloneObject($a_target_id, $a_copy_id=0, $a_omit_tree=false)
Clone folder.
static _lookupObjId($a_id)
addAdditionalSubItemInformation(&$a_item_data)
Add additional information to sub item, e.g.
getTitle()
get object title public
getViewMode()
Get container view mode.
Class to report exception.
cloneDependencies($a_target_id, $a_copy_id)
Clone object dependencies (crs items, preconditions)
static deliverFile($a_file, $a_filename, $a_mime='', $isInline=false, $removeAfterDelivery=false, $a_exit_after=true)
deliver file for download via browser.
static zip($a_dir, $a_file, $compress_content=false)
zips given directory/file into given zip.file
Create styles array
The data for the language used.
static makeDir($a_dir)
creates a new directory and inherits all filesystem permissions of the parent directory You may pass ...
static ilTempnam($a_temp_path=null)
Create a temporary file in an ILIAS writable directory.
static cloneDependencies($a_ref_id, $a_target_id, $a_copy_id)
Clone dependencies.
static _lookupAbsolutePath($obj_id, $a_version=null)
return absolute path for version
getRefId()
get reference id public
static _lookupSortMode($a_obj_id)
lookup sort mode
static delDir($a_dir, $a_clean_only=false)
removes a dir and all its content (subdirs and files) recursively
static _lookupViewMode($a_id)
Lookup view mode.