diff modules/contrib/views_slideshow/views_slideshow.module @ 5:c69a71b4f40f

Add slideshow module
author Chris Cannam
date Thu, 07 Dec 2017 14:46:23 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/modules/contrib/views_slideshow/views_slideshow.module	Thu Dec 07 14:46:23 2017 +0000
@@ -0,0 +1,164 @@
+<?php
+
+/**
+ * @file
+ * Provides Slideshow style options for Views.
+ */
+
+use Drupal\Core\Routing\RouteMatchInterface;
+
+/**
+ * Implements hook_help().
+ */
+function views_slideshow_help($route_name, RouteMatchInterface $route_match) {
+  switch ($route_name) {
+    // Main module help for the gss module.
+    case 'help.page.views_slideshow':
+      $output = '<h3>' . t('About') . '</h3>';
+      $output .= '<p>' . t('Views Slideshow can be used to create a slideshow of any content (not just images) that can appear in a View. Powered by jQuery, it is heavily customizable: you may choose slideshow settings for each View you create.') . '</p>';
+      $output .= '<h3>' . t('More Information') . '</h3>';
+      $output .= '<p>' . t('For more information about this module visite the <a href="@link">Views Slideshow</a> module page.', array('@link' => 'https://www.drupal.org/project/views_slideshow')) . '</p>';
+      return $output;
+  }
+}
+
+/**
+ * Implements hook_theme().
+ */
+function views_slideshow_theme() {
+  return [
+    'views_slideshow_main_section' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'slides' => NULL,
+        'plugin' => NULL,
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+    'views_slideshow_pager_widget_render' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+        'location' => NULL,
+        'rows' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+      'function' => 'template_preprocess_views_slideshow_pager_widget_render',
+    ],
+    'views_slideshow_pager_fields' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+        'location' => NULL,
+        'attributes' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+    'views_slideshow_pager_field_field' => [
+      'variables' => [
+        'view' => NULL,
+        'css_identifier' => NULL,
+        'label' => NULL,
+        'output' => NULL,
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+    'views_slideshow_pager_field_item' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'item' => NULL,
+        'count' => NULL,
+        'location' => NULL,
+        'length' => NULL,
+      ],
+    ],
+    'views_slideshow_pager_bullets' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+        'location' => NULL,
+        'attributes' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+    'views_slideshow_controls_widget_render' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+        'location' => NULL,
+        'rows' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+      'function' => 'template_preprocess_views_slideshow_controls_widget_render',
+    ],
+    'views_slideshow_controls_text' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+        'location' => NULL,
+        'rows' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+    'views_slideshow_controls_text_previous' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+    'views_slideshow_controls_text_pause' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+    'views_slideshow_controls_text_next' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+    'views_slideshow_slide_counter_widget_render' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+        'location' => NULL,
+        'rows' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+      'function' => 'template_preprocess_views_slideshow_slide_counter_widget_render',
+    ],
+    'views_slideshow_slide_counter' => [
+      'variables' => [
+        'vss_id' => NULL,
+        'view' => NULL,
+        'settings' => [],
+        'location' => NULL,
+        'rows' => [],
+      ],
+      'file' => 'views_slideshow.theme.inc',
+    ],
+  ];
+}
+
+/**
+ * Views Slideshow: Slideshow.
+ *
+ * As it is a preprocess function, store it with other functions in theme.inc.
+ */
+function template_preprocess_views_view_slideshow(&$vars) {
+  \Drupal::moduleHandler()->loadInclude('views_slideshow', 'inc', 'views_slideshow.theme');
+  _views_slideshow_preprocess_views_view_slideshow($vars);
+}