コード例 #1
0
 /**
  * Get xml
  * @param object $a_entity
  * @param object $a_schema_version
  * @param object $a_id
  * @return 
  */
 public function getXmlRepresentation($a_entity, $a_schema_version, $a_id)
 {
     global $rbacreview;
     include_once './Services/AccessControl/classes/class.ilRoleXmlExport.php';
     $writer = new ilRoleXmlExport();
     $rolfs = $rbacreview->getFoldersAssignedToRole($a_id, false);
     $rolf = end($rolfs);
     $writer->setRoles(array($a_id => $rolf));
     $writer->write();
     return $writer->xmlDumpMem($format);
 }
コード例 #2
0
 /**
  * Get xml
  * @param object $a_entity
  * @param object $a_schema_version
  * @param object $a_id
  * @return 
  */
 public function getXmlRepresentation($a_entity, $a_schema_version, $a_id)
 {
     global $rbacreview;
     include_once './Services/AccessControl/classes/class.ilRoleXmlExport.php';
     $writer = new ilRoleXmlExport();
     include_once './Services/Export/classes/class.ilExportOptions.php';
     $eo = ilExportOptions::getInstance();
     $eo->read();
     $rolf = $eo->getOptionByObjId($a_id, ilExportOptions::KEY_ROOT);
     // @todo refactor rolf
     $writer->setRoles(array($a_id => $rolf));
     $writer->write();
     return $writer->xmlDumpMem($format);
 }
 /**
  * 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;
 }
コード例 #4
0
 /**
  * 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');
 }