Public Member Functions | |
ilObjectDefinition () | |
Constructor. | |
getDefinition ($a_obj_name) | |
get object definition by type | |
getClassName ($a_obj_name) | |
get class name by type | |
getModule ($a_obj_name) | |
get class name by type | |
hasCheckbox ($a_obj_name) | |
should the object get a checkbox (needed for 'cut','copy' ...) | |
getTranslationType ($a_obj_name) | |
get translation type (sys, db or 0)s | |
stopInheritance ($a_obj_name) | |
Does object permits stopping inheritance? | |
getProperties ($a_obj_name) | |
get properties by type | |
getDevMode ($a_obj_name) | |
get devmode status by type | |
getDevModeAll () | |
get all object types in devmode | |
isRBACObject ($a_obj_name) | |
get RBAC status by type returns true if object type is a RBAC object type | |
getAllRBACObjects () | |
get all RBAC object types | |
allowLink ($a_obj_name) | |
checks if linking of an object type is allowed | |
getSubObjects ($a_obj_type) | |
get all subobjects by type | |
getSubobjectsToFilter ($a_obj_type="adm") | |
get all subjects except (rolf) of the adm object This is neceesary for filtering these objects in role perm view. | |
getCreatableSubObjects ($a_obj_type) | |
get only creatable subobjects by type | |
getActions ($a_obj_name) | |
get possible actions by type | |
getFirstProperty ($a_obj_name) | |
get default property by type | |
getPropertyName ($a_cmd, $a_obj_name) | |
get name of property by type | |
getSubObjectsAsString ($a_obj_type) | |
get a string of all subobjects by type | |
getImportObjects ($a_obj_type) | |
get all subobjects that may be imported | |
setHandlers ($a_xml_parser) | |
set event handler | |
handlerBeginTag ($a_xml_parser, $a_name, $a_attribs) | |
start tag handler | |
handlerCharacterData ($a_xml_parser, $a_data) | |
end tag handler | |
handlerEndTag ($a_xml_parser, $a_name) | |
end tag handler | |
__filterObjects (&$subobjects) | |
Data Fields | |
$obj_id | |
$parent | |
$obj_data |
Definition at line 35 of file class.ilObjectDefinition.php.
ilObjectDefinition::__filterObjects | ( | &$ | subobjects | ) |
Definition at line 567 of file class.ilObjectDefinition.php.
Referenced by getSubObjects().
{ foreach($subobjects as $type => $data) { switch($type) { case "chat": if(!$this->ilias->getSetting("chat_active")) { unset($subobjects[$type]); } break; case "icrs": case "icla": if(!$this->ilias->ini->readVariable("iLinc","server_addr")) { unset($subobjects[$type]); } break; default: // DO NOTHING } } }
ilObjectDefinition::allowLink | ( | $ | a_obj_name | ) |
checks if linking of an object type is allowed
string | object type public |
Definition at line 263 of file class.ilObjectDefinition.php.
{ return (bool) $this->obj_data[$a_obj_name]["allow_link"]; }
ilObjectDefinition::getActions | ( | $ | a_obj_name | ) |
get possible actions by type
string | object type public |
Definition at line 362 of file class.ilObjectDefinition.php.
{ $ret = (is_array($this->obj_data[$a_obj_name]["actions"])) ? $this->obj_data[$a_obj_name]["actions"] : array(); return $ret; }
ilObjectDefinition::getAllRBACObjects | ( | ) |
get all RBAC object types
public
Definition at line 242 of file class.ilObjectDefinition.php.
References $type, and isRBACObject().
{ $types = array_keys($this->obj_data); foreach ($types as $type) { if ($this->isRBACObject($type)) { $rbactypes[] = $type; } } return $rbactypes ? $rbactypes : array(); }
ilObjectDefinition::getClassName | ( | $ | a_obj_name | ) |
get class name by type
string | object type public |
Definition at line 89 of file class.ilObjectDefinition.php.
{ return $this->obj_data[$a_obj_name]["class_name"]; }
ilObjectDefinition::getCreatableSubObjects | ( | $ | a_obj_type | ) |
get only creatable subobjects by type
string | object type public |
Definition at line 335 of file class.ilObjectDefinition.php.
References $type, getDevMode(), and getSubObjects().
{ $subobjects = $this->getSubObjects($a_obj_type); // remove role folder object from list unset($subobjects["rolf"]); $sub_types = array_keys($subobjects); // remove object types in development from list foreach ($sub_types as $type) { if ($this->getDevMode($type)) { unset($subobjects[$type]); } } return $subobjects; }
ilObjectDefinition::getDefinition | ( | $ | a_obj_name | ) |
get object definition by type
string | object type public |
Definition at line 78 of file class.ilObjectDefinition.php.
{
return $this->obj_data[$a_obj_name];
}
ilObjectDefinition::getDevMode | ( | $ | a_obj_name | ) |
get devmode status by type
string | object type public |
Definition at line 186 of file class.ilObjectDefinition.php.
Referenced by getCreatableSubObjects(), and getDevModeAll().
{ // always return false if devmode is enabled if (DEVMODE) { return false; } return (bool) $this->obj_data[$a_obj_name]["devmode"]; }
ilObjectDefinition::getDevModeAll | ( | ) |
get all object types in devmode
public
Definition at line 203 of file class.ilObjectDefinition.php.
References $type, and getDevMode().
{ // always return empty array if devmode is enabled if (DEVMODE) { return array(); } $types = array_keys($this->obj_data); foreach ($types as $type) { if ($this->getDevMode($type)) { $devtypes[] = $type; } } return $devtypes ? $devtypes : array(); }
ilObjectDefinition::getFirstProperty | ( | $ | a_obj_name | ) |
get default property by type
string | object type public |
Definition at line 376 of file class.ilObjectDefinition.php.
References $data.
ilObjectDefinition::getImportObjects | ( | $ | a_obj_type | ) |
get all subobjects that may be imported
string | object type public |
Definition at line 437 of file class.ilObjectDefinition.php.
{ $imp = array(); if (is_array($this->obj_data[$a_obj_type]["subobjects"])) { foreach ($this->obj_data[$a_obj_type]["subobjects"] as $sub) { if ($sub["import"] == 1) { $imp[] = $sub["name"]; } } } return $imp; }
ilObjectDefinition::getModule | ( | $ | a_obj_name | ) |
get class name by type
string | object type public |
Definition at line 101 of file class.ilObjectDefinition.php.
{ return $this->obj_data[$a_obj_name]["module"]; }
ilObjectDefinition::getProperties | ( | $ | a_obj_name | ) |
get properties by type
string | object type public |
Definition at line 146 of file class.ilObjectDefinition.php.
References $data.
{ if (defined("ILIAS_MODULE")) { $props = array(); if (is_array($this->obj_data[$a_obj_name]["properties"])) { foreach ($this->obj_data[$a_obj_name]["properties"] as $data => $prop) { if ($prop["module"] != "n") { $props[$data] = $prop; } } } return $props; } else { $props = array(); if (is_array($this->obj_data[$a_obj_name]["properties"])) { foreach ($this->obj_data[$a_obj_name]["properties"] as $data => $prop) { if ($prop["module"] != 1) { $props[$data] = $prop; } } } return $props; } }
ilObjectDefinition::getPropertyName | ( | $ | a_cmd, | |
$ | a_obj_name | |||
) |
get name of property by type
string | object type public |
Definition at line 406 of file class.ilObjectDefinition.php.
{ return $this->obj_data[$a_obj_name]["properties"][$a_cmd]["lng"]; }
ilObjectDefinition::getSubObjects | ( | $ | a_obj_type | ) |
get all subobjects by type
string | object type public |
Definition at line 275 of file class.ilObjectDefinition.php.
References $data, and __filterObjects().
Referenced by getCreatableSubObjects().
{ $subs = array(); if ($subobjects = $this->obj_data[$a_obj_type]["subobjects"]) { // Filter some objects e.g chat object are creatable if chat is active $this->__filterObjects($subobjects); foreach ($subobjects as $data => $sub) { if ($sub["module"] != "n") { $subs[$data] = $sub; } } return $subs; } return $subs; }
ilObjectDefinition::getSubObjectsAsString | ( | $ | a_obj_type | ) |
get a string of all subobjects by type
string | object type public |
Definition at line 417 of file class.ilObjectDefinition.php.
References $data.
ilObjectDefinition::getSubobjectsToFilter | ( | $ | a_obj_type = "adm" |
) |
get all subjects except (rolf) of the adm object This is neceesary for filtering these objects in role perm view.
e.g It it not necessary to view/edit role permission for the usrf object since it's not possible to create a new one
string | object type public |
Definition at line 307 of file class.ilObjectDefinition.php.
{ foreach($this->obj_data[$a_obj_type]["subobjects"] as $key => $value) { switch($key) { case "rolf": // DO NOTHING break; default: $tmp_subs[] = $key; } } // ADD adm and root object $tmp_subs[] = "adm"; $tmp_subs[] = "root"; return $tmp_subs ? $tmp_subs : array(); }
ilObjectDefinition::getTranslationType | ( | $ | a_obj_name | ) |
get translation type (sys, db or 0)s
string | object type public |
Definition at line 124 of file class.ilObjectDefinition.php.
{ return $this->obj_data[$a_obj_name]["translate"]; }
ilObjectDefinition::handlerBeginTag | ( | $ | a_xml_parser, | |
$ | a_name, | |||
$ | a_attribs | |||
) |
start tag handler
ressouce | internal xml_parser_handler | |
string | element tag name | |
array | element attributes private |
Definition at line 478 of file class.ilObjectDefinition.php.
{ switch ($a_name) { case 'objects': $this->current_tag = ''; break; case 'object': $this->parent_tag_name = $a_attribs["name"]; $this->current_tag = ''; $this->obj_data["$a_attribs[name]"]["name"] = $a_attribs["name"]; $this->obj_data["$a_attribs[name]"]["class_name"] = $a_attribs["class_name"]; $this->obj_data["$a_attribs[name]"]["checkbox"] = $a_attribs["checkbox"]; $this->obj_data["$a_attribs[name]"]["inherit"] = $a_attribs["inherit"]; $this->obj_data["$a_attribs[name]"]["module"] = $a_attribs["module"]; $this->obj_data["$a_attribs[name]"]["translate"] = $a_attribs["translate"]; $this->obj_data["$a_attribs[name]"]["devmode"] = $a_attribs["devmode"]; $this->obj_data["$a_attribs[name]"]["allow_link"] = $a_attribs["allow_link"]; $this->obj_data["$a_attribs[name]"]["rbac"] = $a_attribs["rbac"]; break; case 'subobj': $this->current_tag = "subobj"; $this->current_tag_name = $a_attribs["name"]; $this->obj_data[$this->parent_tag_name]["subobjects"][$this->current_tag_name]["name"] = $a_attribs["name"]; // NUMBER OF ALLOWED SUBOBJECTS (NULL means no limit) $this->obj_data[$this->parent_tag_name]["subobjects"][$this->current_tag_name]["max"] = $a_attribs["max"]; // also allow import ("1" means yes) $this->obj_data[$this->parent_tag_name]["subobjects"][$this->current_tag_name]["import"] = $a_attribs["import"]; $this->obj_data[$this->parent_tag_name]["subobjects"][$this->current_tag_name]["module"] = $a_attribs["module"]; break; case 'property': $this->current_tag = "property"; $this->current_tag_name = $a_attribs["name"]; $this->obj_data[$this->parent_tag_name]["properties"][$this->current_tag_name]["name"] = $a_attribs["name"]; $this->obj_data[$this->parent_tag_name]["properties"][$this->current_tag_name]["module"] = $a_attribs["module"]; break; case 'action': $this->current_tag = "action"; $this->current_tag_name = $a_attribs["name"]; $this->obj_data[$this->parent_tag_name]["actions"][$this->current_tag_name]["name"] = $a_attribs["name"]; break; } }
ilObjectDefinition::handlerCharacterData | ( | $ | a_xml_parser, | |
$ | a_data | |||
) |
end tag handler
ressouce | internal xml_parser_handler | |
string | data private |
Definition at line 529 of file class.ilObjectDefinition.php.
{ // DELETE WHITESPACES AND NEWLINES OF CHARACTER DATA $a_data = preg_replace("/\n/","",$a_data); $a_data = preg_replace("/\t+/","",$a_data); if (!empty($a_data)) { switch ($this->current_tag) { case "subobj": $this->obj_data[$this->parent_tag_name]["subobjects"][$this->current_tag_name]["lng"] .= $a_data; break; case "action" : $this->obj_data[$this->parent_tag_name]["actions"][$this->current_tag_name]["lng"] .= $a_data; break; case "property" : $this->obj_data[$this->parent_tag_name]["properties"][$this->current_tag_name]["lng"] .= $a_data; break; default: break; } } }
ilObjectDefinition::handlerEndTag | ( | $ | a_xml_parser, | |
$ | a_name | |||
) |
end tag handler
ressouce | internal xml_parser_handler | |
string | element tag name private |
Definition at line 561 of file class.ilObjectDefinition.php.
{ $this->current_tag = ''; $this->current_tag_name = ''; }
ilObjectDefinition::hasCheckbox | ( | $ | a_obj_name | ) |
should the object get a checkbox (needed for 'cut','copy' ...)
string | object type public |
Definition at line 113 of file class.ilObjectDefinition.php.
{ return (bool) $this->obj_data[$a_obj_name]["checkbox"]; }
ilObjectDefinition::ilObjectDefinition | ( | ) |
Constructor.
setup ILIAS global object public
Definition at line 65 of file class.ilObjectDefinition.php.
References ilSaxParser::ilSaxParser().
{ parent::ilSaxParser(ILIAS_ABSOLUTE_PATH."/objects.xml"); }
ilObjectDefinition::isRBACObject | ( | $ | a_obj_name | ) |
get RBAC status by type returns true if object type is a RBAC object type
string | object type public |
Definition at line 231 of file class.ilObjectDefinition.php.
Referenced by getAllRBACObjects().
{ return (bool) $this->obj_data[$a_obj_name]["rbac"]; }
ilObjectDefinition::setHandlers | ( | $ | a_xml_parser | ) |
set event handler
ressouce | internal xml_parser_handler private |
Reimplemented from ilSaxParser.
Definition at line 463 of file class.ilObjectDefinition.php.
{ xml_set_object($a_xml_parser,$this); xml_set_element_handler($a_xml_parser,'handlerBeginTag','handlerEndTag'); xml_set_character_data_handler($a_xml_parser,'handlerCharacterData'); }
ilObjectDefinition::stopInheritance | ( | $ | a_obj_name | ) |
Does object permits stopping inheritance?
string | object type public |
Definition at line 135 of file class.ilObjectDefinition.php.
{ return (bool) $this->obj_data[$a_obj_name]["inherit"]; }
ilObjectDefinition::$obj_data |
Definition at line 57 of file class.ilObjectDefinition.php.
ilObjectDefinition::$obj_id |
Definition at line 43 of file class.ilObjectDefinition.php.
ilObjectDefinition::$parent |
Definition at line 50 of file class.ilObjectDefinition.php.