annotate sites/all/modules/views_slideshow/views_slideshow.api.php @ 2:b74b41bb73f0

-- Google analytics module
author danieleb <danielebarchiesi@me.com>
date Thu, 22 Aug 2013 17:22:54 +0100
parents
children
rev   line source
danielebarchiesi@2 1 <?php
danielebarchiesi@2 2
danielebarchiesi@2 3 /**
danielebarchiesi@2 4 * @file
danielebarchiesi@2 5 * Hooks provided by Views Slideshow.
danielebarchiesi@2 6 */
danielebarchiesi@2 7
danielebarchiesi@2 8 /**
danielebarchiesi@2 9 * @addtogroup hooks
danielebarchiesi@2 10 * @{
danielebarchiesi@2 11 */
danielebarchiesi@2 12
danielebarchiesi@2 13 /**
danielebarchiesi@2 14 * Define the type of the slideshow (eg.: cycle, imageflow, ddblock).
danielebarchiesi@2 15 *
danielebarchiesi@2 16 * @return
danielebarchiesi@2 17 * Associative array of slideshow type and its information.
danielebarchiesi@2 18 */
danielebarchiesi@2 19 function hook_views_slideshow_slideshow_info() {
danielebarchiesi@2 20 $options = array(
danielebarchiesi@2 21 'views_slideshow_cycle' => array(
danielebarchiesi@2 22 'name' => t('Cycle'),
danielebarchiesi@2 23 'accepts' => array(
danielebarchiesi@2 24 'goToSlide',
danielebarchiesi@2 25 'nextSlide',
danielebarchiesi@2 26 'pause',
danielebarchiesi@2 27 'play',
danielebarchiesi@2 28 'previousSlide',
danielebarchiesi@2 29 ),
danielebarchiesi@2 30 'calls' => array(
danielebarchiesi@2 31 'transitionBegin',
danielebarchiesi@2 32 'transitionEnd',
danielebarchiesi@2 33 'goToSlide',
danielebarchiesi@2 34 'pause',
danielebarchiesi@2 35 'play',
danielebarchiesi@2 36 'nextSlide',
danielebarchiesi@2 37 'previousSlide',
danielebarchiesi@2 38 ),
danielebarchiesi@2 39 ),
danielebarchiesi@2 40 );
danielebarchiesi@2 41 return $options;
danielebarchiesi@2 42 }
danielebarchiesi@2 43
danielebarchiesi@2 44 /**
danielebarchiesi@2 45 * Define form fields to be displayed in the views settings form.
danielebarchiesi@2 46 * These fields would help configure your slideshow type.
danielebarchiesi@2 47 */
danielebarchiesi@2 48 function hook_views_slideshow_slideshow_type_form(&$form, &$form_state, &$view) {
danielebarchiesi@2 49 $form['views_slideshow_cycle']['effect'] = array(
danielebarchiesi@2 50 '#type' => 'select',
danielebarchiesi@2 51 '#title' => t('Effect'),
danielebarchiesi@2 52 '#options' => $effects,
danielebarchiesi@2 53 '#default_value' => $view->options['views_slideshow_cycle']['effect'],
danielebarchiesi@2 54 '#description' => t('The transition effect that will be used to change between images. Not all options below may be relevant depending on the effect. ' . l('Follow this link to see examples of each effect.', 'http://jquery.malsup.com/cycle/browser.html', array('attributes' => array('target' => '_blank')))),
danielebarchiesi@2 55 );
danielebarchiesi@2 56 }
danielebarchiesi@2 57
danielebarchiesi@2 58 /**
danielebarchiesi@2 59 * Set default values for your form fields specified in hook_views_slideshow_type_form
danielebarchiesi@2 60 *
danielebarchiesi@2 61 * @return
danielebarchiesi@2 62 * Associative array of slideshow type name and options.
danielebarchiesi@2 63 */
danielebarchiesi@2 64 function hook_views_slideshow_option_definition() {
danielebarchiesi@2 65 $options['views_slideshow_cycle'] = array(
danielebarchiesi@2 66 'contains' => array(
danielebarchiesi@2 67 // Transition
danielebarchiesi@2 68 'effect' => array('default' => 'fade'),
danielebarchiesi@2 69 'transition_advanced' => array('default' => 0),
danielebarchiesi@2 70 'timeout' => array('default' => 5000),
danielebarchiesi@2 71 'speed' => array('default' => 700), //normal
danielebarchiesi@2 72 'delay' => array('default' => 0),
danielebarchiesi@2 73 'sync' => array('default' => 1),
danielebarchiesi@2 74 'random' => array('default' => 0),
danielebarchiesi@2 75 )
danielebarchiesi@2 76 );
danielebarchiesi@2 77 return $options;
danielebarchiesi@2 78 }
danielebarchiesi@2 79
danielebarchiesi@2 80 /**
danielebarchiesi@2 81 * Form validation callback for the slideshow settings.
danielebarchiesi@2 82 */
danielebarchiesi@2 83 function hook_views_slideshow_options_form_validate(&$form, &$form_state, &$view) {
danielebarchiesi@2 84 if (!is_numeric($form_state['values']['style_options']['views_slideshow_cycle']['speed'])) {
danielebarchiesi@2 85 form_error($form['views_slideshow_cycle']['speed'], t('!setting must be numeric!', array('Speed')));
danielebarchiesi@2 86 }
danielebarchiesi@2 87 if (!is_numeric($form_state['values']['style_options']['views_slideshow_cycle']['timeout'])) {
danielebarchiesi@2 88 form_error($form['views_slideshow_cycle']['speed'], t('!setting must be numeric!', array('timeout')));
danielebarchiesi@2 89 }
danielebarchiesi@2 90 if (!is_numeric($form_state['values']['style_options']['views_slideshow_cycle']['remember_slide_days'])) {
danielebarchiesi@2 91 form_error($form['views_slideshow_cycle']['remember_slide_days'], t('!setting must be numeric!', array('Slide days')));
danielebarchiesi@2 92 }
danielebarchiesi@2 93 }
danielebarchiesi@2 94
danielebarchiesi@2 95 /**
danielebarchiesi@2 96 * Form submission callback for the slideshow settings.
danielebarchiesi@2 97 */
danielebarchiesi@2 98 function hook_views_slideshow_options_form_submit($form, &$form_state) {
danielebarchiesi@2 99 // Act on option submission.
danielebarchiesi@2 100 }
danielebarchiesi@2 101
danielebarchiesi@2 102 /**
danielebarchiesi@2 103 * Define slideshow skins to be available to the end user.
danielebarchiesi@2 104 */
danielebarchiesi@2 105 function hook_views_slideshow_skin_info() {
danielebarchiesi@2 106 return array(
danielebarchiesi@2 107 'default' => array(
danielebarchiesi@2 108 'name' => t('Default'),
danielebarchiesi@2 109 ),
danielebarchiesi@2 110 );
danielebarchiesi@2 111 }
danielebarchiesi@2 112
danielebarchiesi@2 113 /**
danielebarchiesi@2 114 * Define new widgets (pagers, controls, counters).
danielebarchiesi@2 115 *
danielebarchiesi@2 116 * Available events for accepts and calls
danielebarchiesi@2 117 * - pause
danielebarchiesi@2 118 * - play
danielebarchiesi@2 119 * - nextSlide
danielebarchiesi@2 120 * - previousSlide
danielebarchiesi@2 121 * - goToSlide
danielebarchiesi@2 122 * - transitionBegin
danielebarchiesi@2 123 * - transitionEnd
danielebarchiesi@2 124 *
danielebarchiesi@2 125 * @return
danielebarchiesi@2 126 * Array keyed by the widget names.
danielebarchiesi@2 127 */
danielebarchiesi@2 128 function hook_views_slideshow_widget_info() {
danielebarchiesi@2 129 return array(
danielebarchiesi@2 130 'views_slideshow_pager' => array(
danielebarchiesi@2 131 'name' => t('Pager'),
danielebarchiesi@2 132 'accepts' => array(
danielebarchiesi@2 133 'transitionBegin' => array('required' => TRUE),
danielebarchiesi@2 134 'goToSlide',
danielebarchiesi@2 135 'previousSlide',
danielebarchiesi@2 136 'nextSlide',
danielebarchiesi@2 137 ),
danielebarchiesi@2 138 'calls' => array(
danielebarchiesi@2 139 'goToSlide',
danielebarchiesi@2 140 'pause',
danielebarchiesi@2 141 'play',
danielebarchiesi@2 142 ),
danielebarchiesi@2 143 ),
danielebarchiesi@2 144 'views_slideshow_controls' => array(
danielebarchiesi@2 145 'name' => t('Controls'),
danielebarchiesi@2 146 'accepts' => array(
danielebarchiesi@2 147 'pause' => array('required' => TRUE),
danielebarchiesi@2 148 'play' => array('required' => TRUE),
danielebarchiesi@2 149 ),
danielebarchiesi@2 150 'calls' => array(
danielebarchiesi@2 151 'nextSlide',
danielebarchiesi@2 152 'pause',
danielebarchiesi@2 153 'play',
danielebarchiesi@2 154 'previousSlide',
danielebarchiesi@2 155 ),
danielebarchiesi@2 156 ),
danielebarchiesi@2 157 'views_slideshow_slide_counter' => array(
danielebarchiesi@2 158 'name' => t('Slide Counter'),
danielebarchiesi@2 159 'accepts' => array(
danielebarchiesi@2 160 'transitionBegin' => array('required' => TRUE),
danielebarchiesi@2 161 'goToSlide',
danielebarchiesi@2 162 'previousSlide',
danielebarchiesi@2 163 'nextSlide',
danielebarchiesi@2 164 ),
danielebarchiesi@2 165 'calls' => array(),
danielebarchiesi@2 166 ),
danielebarchiesi@2 167 );
danielebarchiesi@2 168 }
danielebarchiesi@2 169
danielebarchiesi@2 170 /**
danielebarchiesi@2 171 * Form fields to be added for a specific widget type. Example of a widget type would be views_slideshow_pager or views_slideshow_slide_counter.
danielebarchiesi@2 172 */
danielebarchiesi@2 173 function INSERT_WIDGET_TYPE_HERE_views_slideshow_widget_form_options(&$form, $form_state, $view, $defaults, $dependency) {
danielebarchiesi@2 174 }
danielebarchiesi@2 175
danielebarchiesi@2 176 /**
danielebarchiesi@2 177 * Hook called by the pager widget to configure it, the fields that should be shown.
danielebarchiesi@2 178 */
danielebarchiesi@2 179 function hook_views_slideshow_widget_pager_info($view) {
danielebarchiesi@2 180 }
danielebarchiesi@2 181
danielebarchiesi@2 182 /**
danielebarchiesi@2 183 * Hook called by the pager widget to add form items.
danielebarchiesi@2 184 */
danielebarchiesi@2 185 function INSERT_WIDGET_TYPE_HERE_views_slideshow_widget_pager_form_options(&$form, &$form_state, &$view, $defaults, $dependency) {
danielebarchiesi@2 186 }
danielebarchiesi@2 187
danielebarchiesi@2 188 /**
danielebarchiesi@2 189 * Hook called by the controls widget to configure it, the fields that should be shown.
danielebarchiesi@2 190 */
danielebarchiesi@2 191 function hook_views_slideshow_widget_controls_info($view) {
danielebarchiesi@2 192 }
danielebarchiesi@2 193
danielebarchiesi@2 194 /**
danielebarchiesi@2 195 * Hook called by the controls widget to add form items.
danielebarchiesi@2 196 */
danielebarchiesi@2 197 function INSERT_WIDGET_TYPE_HERE_views_slideshow_widget_controls_form_options(&$form, &$form_state, &$view, $defaults, $dependency) {
danielebarchiesi@2 198 }
danielebarchiesi@2 199
danielebarchiesi@2 200 /**
danielebarchiesi@2 201 * @} End of "addtogroup hooks".
danielebarchiesi@2 202 */