23 $this->limit_number = $a_limit;
33 $this->limit_age = $dt;
47 $this->limit_types = (
array) $a_types;
57 $this->mode = $a_mode;
67 $GLOBALS[
'ilLog']->write(__METHOD__ .
': Handling delete');
69 case self::MODE_TRASH_RESTORE:
70 $GLOBALS[
'ilLog']->write(__METHOD__ .
': Restore trash to recovery folder');
74 case self::MODE_TRASH_REMOVE:
75 $GLOBALS[
'ilLog']->write(__METHOD__ .
': Remove selected from system.');
91 $GLOBALS[
'ilLog']->write(__METHOD__ .
': Found deleted : ' . print_r($deleted,
true));
95 foreach ($deleted as $tmp_num => $deleted_info) {
96 $ref_obj =
$factory->getInstanceByRefId($deleted_info[
'child'],
false);
101 $GLOBALS[
'tree']->deleteNode($deleted_info[
'tree'], $deleted_info[
'child']);
102 $GLOBALS[
'ilLog']->write(__METHOD__ .
': Object tree entry deleted');
104 if ($ref_obj->getType() !=
'rolf') {
105 $GLOBALS[
'rbacadmin']->revokePermission($deleted_info[
'child']);
106 $ref_obj->putInTree(RECOVERY_FOLDER_ID);
107 $ref_obj->setPermissions(RECOVERY_FOLDER_ID);
108 $GLOBALS[
'ilLog']->write(__METHOD__ .
': Object moved to recovery folder');
121 foreach ($deleted as $tmp_num => $deleted_info) {
122 $sub_nodes = $this->
readDeleted($deleted_info[
'tree']);
124 foreach ($sub_nodes as $tmp_num => $subnode_info) {
125 $ref_obj =
$factory->getInstanceByRefId($subnode_info[
'child'],
false);
126 if (!$ref_obj instanceof
ilObject) {
153 $and_types =
'AND ' . $ilDB->in(
'o.type', $this->
getTypesLimit(),
false,
'text') .
' ';
158 if ($age_limit > 0) {
166 $query =
'SELECT child,tree FROM tree t JOIN object_reference r ON child = r.ref_id ' .
167 'JOIN object_data o on r.obj_id = o.obj_id ' .
168 'WHERE tree < ' . $ilDB->quote(0,
'integer') .
' ' .
169 'AND child = -tree ';
173 $query .=
'ORDER BY depth desc ';
182 'tree' =>
$row->tree,
183 'child' =>
$row->child
201 $query =
'SELECT child,tree FROM tree t JOIN object_reference r ON child = r.ref_id ' .
202 'JOIN object_data o on r.obj_id = o.obj_id ';
204 if ($tree_id === null) {
205 $query .=
'WHERE tree < ' . $ilDB->quote(0,
'integer') .
' ';
207 $query .=
'WHERE tree = ' . $ilDB->quote($tree_id,
'integer') .
' ';
209 $query .=
'ORDER BY depth desc';
216 'tree' =>
$row->tree,
217 'child' =>
$row->child
readSelectedDeleted()
read deleted according to filter settings
static _removeEntry($a_tree, $a_child, $a_db_table="tree")
STATIC METHOD Removes a single entry from a tree.
readDeleted($tree_id=null)
Read deleted objects type $ilDB.
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
if(!array_key_exists('StateId', $_REQUEST)) $id
foreach($_POST as $key=> $value) $res
Create styles array
The data for the language used.
setAgeLimit(ilDateTime $dt)
removeSelectedFromSystem()
remove (containers) from system
static getLogger($a_component_id)
Get component logger.
restore()
Restore to recovery folder.