/** * @return array the array of link types and label */ public static function getLinkTypes() { if (!isset(self::$link_types)) { require_once JPATH_ADMINISTRATOR . '/components/com_zoo/config.php'; $applications = self::getZooApplications(); $list = array(); foreach ($applications as $application) { $types = $application->getTypes(); foreach ($types as $type) { $elements = $type->getElements(); foreach ($elements as $element) { $sprocket_type = RokSprocket_Provider_Zoo_FieldProcessorFactory::getSprocketType($element->getElementType()); if ($sprocket_type == 'link') { $key = 'link_field_' . $element->identifier; $list[$key] = array(); $list[$key]['group'] = $application->id . '_' . $type->id; $list[$key]['display'] = $element->config->name; } } } } self::sortTypes($list); self::$link_types = $list; } return self::$link_types; }