function views_plugin_style_mixitup_views::options_form in MixItUp Views 7
Render the given style.
Overrides views_plugin_style::options_form
File
- ./
views_plugin_style_mixitup_views.inc, line 31 - Contains the Mixitup style plugin.
Class
- views_plugin_style_mixitup_views
- @file Contains the Mixitup style plugin.
Code
function options_form(&$form, &$form_state) {
parent::options_form($form, $form_state);
// Add Mixitup options to views form.
$form['mixitup'] = array(
'#type' => 'fieldset',
'#title' => t('MixItUp Animation settings'),
);
if (mixitup_views_installed()) {
$options = $this->options;
$form['filter_type'] = array(
'#type' => 'select',
'#title' => t('Type of filtering'),
'#options' => array(
'checkboxes' => t('Checkboxes'),
'select' => t('Selectboxes'),
),
'#default_value' => $options['filter_type'],
'#description' => t('Select needed field type for filtering'),
);
$form['animation_enable'] = array(
'#type' => 'checkbox',
'#title' => t('Enable Animation'),
'#default_value' => $options['animation_enable'],
'#attributes' => array(
'class' => array(
'animation_enable',
),
),
);
$form['animation_effects'] = array(
'#type' => 'textfield',
'#title' => t('Effects'),
'#description' => t('The effects for all filter operations as a space-separated string.'),
'#default_value' => $options['animation_effects'],
);
$form['animation_duration'] = array(
'#type' => 'textfield',
'#title' => t('Duration'),
'#description' => t('The duration of the animation in milliseconds.'),
'#default_value' => $options['animation_duration'],
);
$form['animation_easing'] = array(
'#type' => 'textfield',
'#title' => t('Easing'),
'#description' => t('For a full list of accepted values, check out easings.net.'),
'#default_value' => $options['animation_easing'],
);
$form['animation_perspectiveDistance'] = array(
'#type' => 'textfield',
'#title' => t('perspectiveDistance'),
'#description' => t('The perspective value in CSS units applied to the container during animations.'),
'#default_value' => $options['animation_perspectiveDistance'],
);
$form['animation_perspectiveOrigin'] = array(
'#type' => 'textfield',
'#title' => t('perspectiveOrigin'),
'#description' => t('The perspective-origin value applied to the container during animations.'),
'#default_value' => $options['animation_perspectiveOrigin'],
);
$form['animation_queue'] = array(
'#type' => 'checkbox',
'#title' => t('Queue'),
'#description' => t('Enable queuing for all operations received while an another operation is in progress.'),
'#default_value' => $options['animation_queue'],
'#attributes' => array(
'class' => array(
'animation_queue',
),
),
);
$form['animation_queueLimit'] = array(
'#type' => 'textfield',
'#title' => t('queueLimit'),
'#description' => t('The maximum number of operations allowed in the queue at any time.'),
'#default_value' => $options['animation_queueLimit'],
);
foreach (mixitup_views_default_options(TRUE) as $option => $default_value) {
$form[$option]['#fieldset'] = 'mixitup';
if ($option != 'animation_enable') {
$selectors['.animation_enable'] = array(
'checked' => TRUE,
);
if ($option == 'animation_queueLimit') {
$selectors['.animation_queue'] = array(
'checked' => TRUE,
);
}
$form[$option]['#states'] = array(
'visible' => $selectors,
);
}
}
$view = $form_state['view'];
$sorts = $view
->get_items('sort');
$form['mixitup_sorting_settings'] = array(
'#type' => 'fieldset',
'#title' => t('MixItUp Sorting settings'),
);
$form['use_sort'] = array(
'#type' => 'checkbox',
'#fieldset' => 'mixitup_sorting_settings',
'#title' => t('Use sorting.'),
'#description' => t('If you want to add new Sort criteria, add them under views "Sort criteria", at first.'),
'#default_value' => $options['use_sort'],
'#attributes' => array(
'class' => array(
'use_sort',
),
),
);
if ($sorts) {
$form['sorts'] = array(
'#type' => 'div',
'#fieldset' => 'mixitup_sorting_settings',
);
foreach ($sorts as $id => $sort) {
$sort_id = $sort['table'] . '_' . $sort['field'];
$form['sorts'][$sort_id] = array(
'#type' => 'textfield',
'#title' => t('Label for "!f"', array(
'!f' => $id,
)),
'#description' => t("If you don't want to use it, just make this field empty."),
'#default_value' => isset($options['sorts'][$sort_id]) ? $options['sorts'][$sort_id] : '',
'#states' => array(
'visible' => array(
'.use_sort' => array(
'checked' => TRUE,
),
),
),
);
}
}
$form['mixitup_vocab'] = array(
'#type' => 'fieldset',
'#title' => t('MixItUp Vocabulary settings'),
);
$form['restrict_vocab'] = array(
'#type' => 'checkbox',
'#fieldset' => 'mixitup_vocab',
'#title' => t('Restrict terms to particular vocabulary.'),
'#default_value' => $options['restrict_vocab'],
'#attributes' => array(
'class' => array(
'restrict_vocab_enable',
),
),
);
$all_vocabs = taxonomy_vocabulary_load_multiple(FALSE);
$vocabulary_options = array();
foreach ($all_vocabs as $key_vid => $vocab) {
$vocabulary_options[$key_vid] = $vocab->name;
}
$form['restrict_vocab_ids'] = array(
'#type' => 'checkboxes',
'#fieldset' => 'mixitup_vocab',
'#title' => t('Select vocabularies'),
'#multiple' => TRUE,
'#options' => $vocabulary_options,
'#default_value' => $options['restrict_vocab_ids'],
'#states' => array(
'visible' => array(
'.restrict_vocab_enable' => array(
'checked' => TRUE,
),
),
),
);
}
else {
// Disable Mixitup.
$form['mixitup_disabled'] = array(
'#markup' => t('Please, download !mixitup plugin to your
libraries directory. For more information read !read. After that, you can use it.', array(
'!mixitup' => l('MixItUp', 'https://github.com/patrickkunka/mixitup'),
'!read' => l('README', 'admin/help/mixitup_views', array(
'absolut' => TRUE,
'attributes' => array(
'target' => '_blank',
),
)),
)),
'#fieldset' => 'mixitup',
);
}
}