| | |
| | | use JVBase\registry\providers\CalendarFieldProvider; |
| | | use JVBase\registry\providers\CommonFieldProvider; |
| | | use JVBase\registry\providers\FieldProviderInterface; |
| | | use JVBase\registry\providers\HelcimFieldProvider; |
| | | use JVBase\base\Site; |
| | | use JVBase\registry\providers\IntegrationFieldProvider; |
| | | |
| | | class FieldRegistry |
| | |
| | | $this->addFieldProvider('common', new CommonFieldProvider()); |
| | | $this->addFieldProvider('calendar', new CalendarFieldProvider()); |
| | | $this->addFieldProvider('integration', new IntegrationFieldProvider()); |
| | | // if (jvbSiteUsesHelcim()) { |
| | | // $this->addFieldProvider('helcim', new HelcimFieldProvider()); |
| | | // } |
| | | |
| | | |
| | | |
| | | // Allow extensions to add providers |
| | | do_action(BASE . 'register_field_providers', $this); |
| | |
| | | |
| | | // Apply filters for extensibility |
| | | $fields = apply_filters(BASE . 'fields', $fields, $type, $object_type); |
| | | $fields = apply_filters(BASE . "{$type}_fields", $fields, $object_type); |
| | | |
| | | return $fields; |
| | | return apply_filters(BASE . "{$type}_fields", $fields, $object_type); |
| | | } |
| | | |
| | | /** |
| | |
| | | } |
| | | } |
| | | |
| | | if (Site::hasIntegration('helcim') && jvbCheck('use_helcim', $config)) { |
| | | $helcim = JVB()->connect('helcim'); |
| | | if ($helcim) { |
| | | $contentType = $config['integrations']['helcim']['content_type'] ?? $helcim->getDefaultContentType(); |
| | | $fields = array_merge($fields, $helcim->getHelcimMeta($contentType)); |
| | | } |
| | | } |
| | | |
| | | return $fields; |
| | | } |
| | | |