/** * Cut and copy a set of skills/skill categories into the clipboard */ function clipboardCut($a_tree_id, $a_ids) { self::clearClipboard(); include_once "./Services/Skill/classes/class.ilSkillTree.php"; $tree = new ilSkillTree(); if (!is_array($a_ids)) { return false; } else { // get all "top" ids, i.e. remove ids, that have a selected parent foreach ($a_ids as $id) { $path = $tree->getPathId($id); $take = true; foreach ($path as $path_id) { if ($path_id != $id && in_array($path_id, $a_ids)) { $take = false; } } if ($take) { $cut_ids[] = $id; } } } ilSkillTreeNode::clipboardCopy($a_tree_id, $cut_ids); // remove the objects from the tree // note: we are getting skills/categories which are *not* in the tree // we do not delete any pages/chapters here foreach ($cut_ids as $id) { $curnode = $tree->getNodeData($id); if ($tree->isInTree($id)) { $tree->deleteTree($curnode); } } }