function slick_slideshow_field_formatter_view in Slick Slideshow Lite 7
Implements hook_field_formatter_view().
File
- ./
slick_slideshow.module, line 148 - Defines a system for adding the Slick responsive slideshow library to Drupal.
Code
function slick_slideshow_field_formatter_view($entity_type, $entity, $field, $instance, $langcode, $items, $display) {
$element = array();
// For now, just add Slick to image fields.
switch ($field['type']) {
case 'image':
if ($display['type'] == 'slick_slideshow') {
foreach ($items as $delta => $item) {
$element[$delta] = array(
'#theme' => 'slick_slideshow_image_slide',
'#item' => $item,
'#image_style' => isset($display['settings']['slickField']['image_style']) ? $display['settings']['slickField']['image_style'] : '',
'#captions' => isset($display['settings']['slickField']['captions']) ? $display['settings']['slickField']['captions'] : '',
);
}
}
// Set image field's default settings
if (isset($display['settings']['slickSettings']) && empty($display['settings']['slickSettings'])) {
$display['settings']['slickSettings'] = array(
'slidesToShow' => 1,
'slidesToScroll' => 1,
);
}
// Get image field's Slick slideshow settings.
$settings = _slick_slideshow_settings_alter($display['settings']['slickSettings']);
// Create Slick slideshow.
$field_selector = '#slick-slideshow-' . str_replace('_', '-', $field['field_name']);
$target = '.field-items';
slick_slideshow_create($field_selector, $settings, $target);
break;
}
return $element;
}