Class ilObjRoleFolder. More...
Inheritance diagram for ilObjRoleFolder:
Collaboration diagram for ilObjRoleFolder:Public Member Functions | |
| ilObjRoleFolder ($a_id=0, $a_call_by_reference=true) | |
| Constructor public. | |
| read ($a_force_db=false) | |
| read object data from db into object | |
| delete () | |
| delete rolefolder and all related data | |
| createRole ($a_title, $a_desc, $a_import_id=0) | |
| creates a local role in current rolefolder (this object) | |
| purge () | |
| checks if rolefolder contains any roles. | |
| isDeleted () | |
| checks if role folder is in trash private | |
Class ilObjRoleFolder.
Definition at line 35 of file class.ilObjRoleFolder.php.
| ilObjRoleFolder::createRole | ( | $ | a_title, | |
| $ | a_desc, | |||
| $ | a_import_id = 0 | |||
| ) |
creates a local role in current rolefolder (this object)
public
| string | title | |
| string | description |
Definition at line 102 of file class.ilObjRoleFolder.php.
References ilObject::getRefId().
{
global $rbacadmin, $rbacreview;
include_once ("classes/class.ilObjRole.php");
$roleObj = new ilObjRole();
$roleObj->setTitle($a_title);
$roleObj->setDescription($a_desc);
//echo "aaa-1-";
if ($a_import_id != "")
{
//echo "aaa-2-".$a_import_id."-";
$roleObj->setImportId($a_import_id);
}
$roleObj->create();
// ...and put the role into local role folder...
$rbacadmin->assignRoleToFolder($roleObj->getId(),$this->getRefId(),"y");
return $roleObj;
}
Here is the call graph for this function:| ilObjRoleFolder::delete | ( | ) |
delete rolefolder and all related data
public
Reimplemented from ilObject.
Definition at line 68 of file class.ilObjRoleFolder.php.
References ilObject::getRefId().
{
// always call parent delete function first!!
if (!parent::delete())
{
return false;
}
// put here rolefolder specific stuff
global $rbacreview;
$roles = $rbacreview->getRolesOfRoleFolder($this->getRefId());
// FIRST DELETE ALL LOCAL/BASE ROLES OF FOLDER
foreach ($roles as $role_id)
{
$roleObj =& $this->ilias->obj_factory->getInstanceByObjId($role_id);
$roleObj->setParent($this->getRefId());
$roleObj->delete();
unset($roleObj);
}
// always call parent delete function at the end!!
return true;
}
Here is the call graph for this function:| ilObjRoleFolder::ilObjRoleFolder | ( | $ | a_id = 0, |
|
| $ | a_call_by_reference = true | |||
| ) |
Constructor public.
| integer | reference_id or object_id | |
| boolean | treat the id as reference_id (true) or object_id (false) |
Definition at line 43 of file class.ilObjRoleFolder.php.
References ilObject::ilObject().
{
$this->type = "rolf";
$this->ilObject($a_id,$a_call_by_reference);
}
Here is the call graph for this function:| ilObjRoleFolder::isDeleted | ( | ) |
checks if role folder is in trash private
Definition at line 162 of file class.ilObjRoleFolder.php.
References ilObject::getRefId().
Referenced by purge().
{
$q = "SELECT tree FROM tree WHERE child= ".$this->ilias->db->quote($this->getRefId())." ";
$row = $this->ilias->db->getRow($q);
if ($row->tree < 0)
{
return $row->tree;
}
return false;
}
Here is the call graph for this function:
Here is the caller graph for this function:| ilObjRoleFolder::purge | ( | ) |
checks if rolefolder contains any roles.
if not the rolefolder is deleted public
Definition at line 129 of file class.ilObjRoleFolder.php.
References ilObject::getRefId(), and isDeleted().
{
global $rbacreview, $rbacadmin, $tree;
$local_roles = $rbacreview->getRolesOfRoleFolder($this->getRefId());
if (count($local_roles) == 0)
{
$rbacadmin->revokePermission($this->getRefId());
if ($tree_id = $this->isDeleted())
{
$deleted_tree = new ilTree ($tree_id,- (int) $tree_id);
$deleted_tree->deleteTree($deleted_tree->getNodeData($this->getRefId()));
}
else
{
$tree->deleteTree($tree->getNodeData($this->getRefId()));
}
$this->delete();
return true;
}
return false;
}
Here is the call graph for this function:| ilObjRoleFolder::read | ( | $ | a_force_db = false |
) |
read object data from db into object
| boolean | public |
Reimplemented from ilObject.
Definition at line 49 of file class.ilObjRoleFolder.php.
References ilObject::getId(), ilObject::setDescription(), and ilObject::setTitle().
{
parent::read();
if ($this->getId() != ROLE_FOLDER_ID)
{
$this->setDescription($this->lng->txt("obj_".$this->getType()."_local_desc").$this->getTitle().$this->getDescription());
$this->setTitle($this->lng->txt("obj_".$this->getType()."_local"));
}
}
Here is the call graph for this function:
1.7.1