function masonry_formatter_is_supported in Masonry API 7
Check if a given field/formatter is supported.
Parameters
$context: The $context array provided by the Field Formatter Settings module. See field_formatter_settings.api.php for more information.
Return value
A boolean indicating the supported status.
2 calls to masonry_formatter_is_supported()
- masonry_formatter_field_formatter_settings_form_alter in masonry_formatter/
masonry_formatter.module - Implements hook_field_formatter_settings_form_alter().
- masonry_formatter_field_formatter_settings_summary_alter in masonry_formatter/
masonry_formatter.module - Implements hook_field_formatter_settings_summary_alter().
File
- masonry_formatter/
masonry_formatter.module, line 249 - Allows multi-value fields to be displayed in a jQuery Masonry grid.
Code
function masonry_formatter_is_supported($context) {
$formatter = $context['instance']['display'][$context['view_mode']];
// Fields in Views aren't supported at this stage...
if ($context['instance']['entity_type'] == 'ctools' && $context['instance']['bundle'] == 'ctools') {
return FALSE;
}
// Get list of supported field types
$field_types = masonry_formatter_field_types();
// Return true for supported formatters with multi-value fields
$field_type_supported = array_key_exists($context['field']['type'], $field_types);
$formatter_supported = $field_type_supported && in_array($formatter['type'], $field_types[$context['field']['type']]);
$multi_value_field = $context['field']['cardinality'] > 1 || $context['field']['cardinality'] == FIELD_CARDINALITY_UNLIMITED;
if ($formatter_supported && $multi_value_field) {
return TRUE;
}
else {
return FALSE;
}
}