isFile() && $file->getExtension() == 'php') $out[] = $file->getBasename('.php'); } sort($out); return $out; } public static function getAvailableRecordTypes() { if(!file_exists(__DIR__.DS.'record'.DS.'type')) { return array(); } $dir = new \DirectoryIterator(__DIR__.DS.'record'.DS.'type'); $out = array(); foreach(new \IteratorIterator($dir) as $file) { if($file->isFile() && $file->getExtension() == 'php') { $out[] = $file->getBasename('.php'); } } $out = array_diff($out, array('OldDNS', 'RecordTypeAbstract', 'Def')); sort($out); return $out; } /* * return record types list only for active servers * @return array */ public static function getAvailableRecordTypesByActiveServers() { $avalibleRecordTypes = array(); $rep = main\models\custom\server\Repository::factory()->onlyActive(); $activeServers = $rep->get(); foreach($activeServers as $server) { $submodule = $server->getModule(); $tmpTypes = $submodule->availableTypes; $avalibleRecordTypes = array_unique(array_merge($avalibleRecordTypes, $tmpTypes)); } return $avalibleRecordTypes; } }