/** * Export to xml * @param ilXmlWriter $writer * @return void */ public function toXml(ilXmlWriter $writer) { $writer->xmlStartTag('localPolicyAction'); switch ($this->getFilterType()) { case self::FILTER_SOURCE_TITLE: $writer->xmlStartTag('roleFilter', array('source' => 'title')); break; case self::FILTER_SOURCE_OBJ_ID: $writer->xmlStartTag('roleFilter', array('source' => 'objId')); break; } foreach ($this->getFilterPattern() as $pattern) { $pattern->toXml($writer); } $writer->xmlEndTag('roleFilter'); $il_role_id = 'il_' . IL_INST_ID . '_' . ilObject::_lookupType($this->getRoleTemplateId()) . '_' . $this->getRoleTemplateId(); switch ($this->getRoleTemplateType()) { case self::TPL_ACTION_OVERWRITE: $writer->xmlStartTag('localPolicyTemplate', array('type' => 'overwrite', 'id' => $il_role_id)); break; case self::TPL_ACTION_INTERSECT: $writer->xmlStartTag('localPolicyTemplate', array('type' => 'intersect', 'id' => $il_role_id)); break; case self::TPL_ACTION_UNION: $writer->xmlStartTag('localPolicyTemplate', array('type' => 'union', 'id' => $il_role_id)); break; } include_once './Services/AccessControl/classes/class.ilRoleXmlExport.php'; $exp = new ilRoleXmlExport(); $exp->setMode(ilRoleXmlExport::MODE_DTPL); $exp->addRole($this->getRoleTemplateId(), ROLE_FOLDER_ID); $exp->write(); $writer->appendXML($exp->xmlDumpMem(FALSE)); $writer->xmlEndTag('localPolicyTemplate'); $writer->xmlEndTag('localPolicyAction'); return void; }
/** * Write xml of template action * @param ilXmlWriter $writer */ public function toXml(ilXmlWriter $writer) { $writer->xmlStartTag('localRoleAction'); $il_id = 'il_' . IL_INST_ID . '_' . ilObject::_lookupType($this->getRoleTemplateId()) . '_' . $this->getRoleTemplateId(); $writer->xmlStartTag('roleTemplate', array('id' => $il_id)); include_once './Services/AccessControl/classes/class.ilRoleXmlExport.php'; $exp = new ilRoleXmlExport(); $exp->setMode(ilRoleXmlExport::MODE_DTPL); $exp->addRole($this->getRoleTemplateId(), ROLE_FOLDER_ID); $exp->write(); $writer->appendXML($exp->xmlDumpMem(FALSE)); $writer->xmlEndTag('roleTemplate'); $writer->xmlEndTag('localRoleAction'); }