* @link http://www.mediboard.org */ CCanDo::checkAdmin(); $uid = preg_replace('/[^\\d]/', '', CValue::get("uid")); $temp = CAppUI::getTmpPath("ex_class_import"); $file = "{$temp}/{$uid}"; $import = new CExClassImport($file); $map = array("CExConcept" => array("behaviour" => "shared", "children" => "CExCListItem-list_id", "fields" => array("name" => "ask")), "CExList" => array("behaviour" => "shared", "children" => "CExCListItem-list_id", "fields" => array("name" => "ask")), "CExClassListItem" => array(), "CExClass" => array("children" => array("CExClassFieldGroup-ex_class_id"), "fields" => array("group_id" => "ask")), "CExClassFieldGroup" => array("children" => array("CExClassField-ex_group_id"), "fields" => array("group_id" => "ask")), "CExClassField" => array("children" => array("CExListItem-field_id", "CExClassFieldTranslation-ex_class_field_id"), "fields" => array("group_id" => "ask")), "CExClassFieldTranslation" => array()); /** @var DOMElement $ex_class */ $ex_class = $import->getElementsbyClass("CExClass")->item(0); $ex_class_name = $import->getNamedValueFromElement($ex_class, "name"); $list_elements = $import->getElementsbyClass("CExList"); $lists = array(); foreach ($list_elements as $_list_element) { $_id = $_list_element->getAttribute("id"); $_elements = $import->getElementsByFwdRef("CExListItem", "list_id", $_id); $_elements_values = array(); foreach ($_elements as $_element) { $_elements_values[] = CMbXMLObjectImport::getValuesFromElement($_element); } /** @var CExList[] $_similar */ $_similar = $import->getSimilarFromElement($_list_element); $lists[$_list_element->getAttribute("id")] = array("values" => CMbXMLObjectImport::getValuesFromElement($_list_element), "similar" => $_similar, "elements" => $_elements_values); } $sortfunc = function ($a, $b) { return strcasecmp($a["values"]["name"], $b["values"]["name"]); }; uasort($lists, $sortfunc); $list = new CExList(); /** @var CExList[] $all_lists */ $all_lists = $list->loadGroupList(null, "name");