public function tearDown() { $path = array(LIB_PATH . 'custom_config/controls/failed_to_load.php', LIB_PATH . 'custom_config/test.php', LIB_PATH . 'custom_config/test2.php'); foreach ($path as $row) { if (file_exists($row)) { unlink($row); } } $register = new SystemRegister('Applications/cconfig/user_control_path'); $child = SystemRegisterSample::selectChild($register->getId()); foreach ($child as $row) { $register->delete($row['name']); } }
/** * Очищает от дочерних элементов */ public function clear() { $aChilds = SystemRegisterSample::selectChild($this->nId); foreach ($aChilds as $row) { $this->delete($row['name']); } }
/** * Возвращает имена классов всех контролов, с которыми в данный момент работает CConfig * @return array */ public static function selectAll() { // Грузим все файлы в папке контролов $files = DAO::getInstance('fs')->getFileList(CCONFIG_CONTROLS_PATH); $result = array(); foreach ($files as $row) { try { $row = basename($row, '.php'); $result[$row] = self::loadControl($row); } catch (Exception $e) { } } // Дополняем классами, записанными в реестре $register = new SystemRegister('Applications/cconfig/user_control_path'); $paths = SystemRegisterSample::selectChild($register->getId()); foreach ($paths as $row) { try { $result[$row['name']] = self::loadControl($row['name']); } catch (Exception $e) { } } return $result; }
/** * Возвращает дерево реестра в виде ассоциативного массива */ public static function exportData($nId = 0) { $aData = SystemRegisterSample::selectChild($nId); $aResult = array(); foreach ($aData as $row) { if ($row['type'] == SYSTEMREGISTER_BRANCH_TYPE) { $aResult[$row['name']] = self::exportData($row['id']); } else { $aResult[$row['name']] = $row['value']; } } return $aResult; }