diff --git a/contrib/views_slideshow_cycle/theme/views_slideshow_cycle.theme.inc b/contrib/views_slideshow_cycle/theme/views_slideshow_cycle.theme.inc index a9d7538..34063f9 100644 --- a/contrib/views_slideshow_cycle/theme/views_slideshow_cycle.theme.inc +++ b/contrib/views_slideshow_cycle/theme/views_slideshow_cycle.theme.inc @@ -112,9 +112,9 @@ function _views_slideshow_cycle_preprocess_views_slideshow_cycle_main_frame(&$va $slideshow_count = 0; $rendered_rows = ''; foreach ($rows as $count => $item) { - $items[] = $item; + $items[$count] = $item; if (count($items) == $items_per_slide || $count == (count($rows)-1)) { - $rendered_rows .= theme('views_slideshow_cycle_main_frame_row', array('vss_id' => $vss_id, 'items' => $items, 'count' => $slideshow_count)); + $rendered_rows .= theme('views_slideshow_cycle_main_frame_row', array('vss_id' => $vss_id, 'items' => $items, 'count' => $slideshow_count, 'view' => $vars['view'])); $items = array(); $slideshow_count++; } @@ -140,11 +140,13 @@ function _views_slideshow_cycle_preprocess_views_slideshow_cycle_main_frame_row( $vars['rendered_items'] = ''; foreach ($vars['items'] as $item_count => $item) { - $vars['rendered_items'] .= theme('views_slideshow_cycle_main_frame_row_item', array('item' => $item, 'item_count' => $item_count)); + $vars['rendered_items'] .= theme('views_slideshow_cycle_main_frame_row_item', array('item' => $item, 'item_count' => $item_count, 'view' => $vars['view'])); } } function _views_slideshow_cycle_preprocess_views_slideshow_cycle_main_frame_row_item(&$vars) { + $view = $vars['view']; + $vars['classes_array'][] = 'views-row views-row-' . $vars['item_count']; if (!$vars['item_count']) { $vars['classes_array'][] = 'views-row-first'; @@ -155,4 +157,11 @@ function _views_slideshow_cycle_preprocess_views_slideshow_cycle_main_frame_row_ else { $vars['classes_array'][] = 'views-row-odd'; } + + /** + * Support custom row classes. + */ + if (method_exists($view->style_plugin, 'get_row_class') && $row_class = $view->style_plugin->get_row_class($vars['item_count'])) { + $vars['classes_array'][] = $row_class; + } } diff --git a/contrib/views_slideshow_cycle/views_slideshow_cycle.module b/contrib/views_slideshow_cycle/views_slideshow_cycle.module index 29483bd..3ebde38 100644 --- a/contrib/views_slideshow_cycle/views_slideshow_cycle.module +++ b/contrib/views_slideshow_cycle/views_slideshow_cycle.module @@ -47,11 +47,11 @@ function views_slideshow_cycle_theme($existing, $type, $theme, $path) { 'template' => 'theme/views-slideshow-cycle-main-frame', ), 'views_slideshow_cycle_main_frame_row' => array( - 'variables' => array('vss_id' => NULL, 'items' => NULL, 'count' => NULL), + 'variables' => array('vss_id' => NULL, 'items' => NULL, 'count' => NULL, 'view' => NULL), 'template' => 'theme/views-slideshow-cycle-main-frame-row', ), 'views_slideshow_cycle_main_frame_row_item' => array( - 'variables' => array('item' => NULL, 'item_count' => NULL), + 'variables' => array('item' => NULL, 'item_count' => NULL, 'view' => NULL), 'template' => 'theme/views-slideshow-cycle-main-frame-row-item', ), ); diff --git a/views_slideshow.views.inc b/views_slideshow.views.inc index dc1c754..be34225 100644 --- a/views_slideshow.views.inc +++ b/views_slideshow.views.inc @@ -18,6 +18,7 @@ function views_slideshow_views_plugins() { 'uses options' => TRUE, 'uses row plugin' => TRUE, 'uses grouping' => FALSE, + 'uses row class' => TRUE, 'type' => 'normal', 'parent' => 'list', 'path' => drupal_get_path('module', 'views_slideshow'),