public function ViewsBootstrapPanelPluginStyle::options_form in Views Bootstrap 7.3
Options form.
Overrides views_plugin_style::options_form
File
- plugins/
panel/ views_bootstrap_panel_plugin_style.inc, line 30 - Definition of views_bootstrap_plugin_style.
Class
- ViewsBootstrapPanelPluginStyle
- Class to define a style plugin handler.
Code
public function options_form(&$form, &$form_state) {
parent::options_form($form, $form_state);
if (isset($form['grouping'])) {
$options = array();
foreach (element_children($form['grouping']) as $key => $value) {
if (!empty($form['grouping'][$key]['field']['#options']) && is_array($form['grouping'][$key]['field']['#options'])) {
$options = array_merge($options, $form['grouping'][$key]['field']['#options']);
}
}
$form['help'] = array(
'#markup' => t('The Bootstrap panels displays content in a box with optional header and footer elements (<a href="!docs">see documentation</a>).', [
'!docs' => 'https://www.drupal.org/docs/7/modules/views-bootstrap/panels',
]),
'#weight' => -99,
);
$form['heading_field'] = array(
'#type' => 'select',
'#title' => t('Heading field'),
'#options' => $options,
'#default_value' => $this->options['heading_field'],
'#description' => t('Select the field that will be used as the heading.'),
'#id' => 'heading-field',
);
$field_labels = $this->display->handler
->get_field_labels(TRUE);
$form['title'] = array(
'#type' => 'checkbox',
'#title' => t('Use panel-title class'),
'#default_value' => $this->options['title'],
'#states' => array(
'invisible' => array(
':input#heading-field' => array(
'value' => '',
),
),
),
'#id' => 'title-checkbox',
);
$t_options = array(
'h1' => t('h1'),
'h2' => t('h2'),
'h3' => t('h3'),
'h4' => t('h4'),
'h5' => t('h5'),
'h6' => t('h6'),
'div' => t('div'),
);
$form['title_tag'] = array(
'#type' => 'select',
'#title' => t('Title tag'),
'#options' => $t_options,
'#default_value' => $this->options['title_tag'],
'#description' => t('Select the tag to use around the title.'),
'#states' => array(
'visible' => array(
':input#title-checkbox' => array(
'checked' => TRUE,
),
),
),
);
$form['label_field'] = array(
'#type' => 'select',
'#title' => t('Label field'),
'#options' => $options,
'#required' => FALSE,
'#default_value' => $this->options['label_field'],
'#description' => t('Select the field that will be used as the label.'),
'#states' => array(
'invisible' => array(
':input#heading-field' => array(
'value' => '',
),
),
),
);
$form['footer_field'] = array(
'#type' => 'select',
'#title' => t('Footer field'),
'#options' => $options,
'#default_value' => $this->options['footer_field'],
'#description' => t('Select the field that will be used as the footer.'),
);
$c_options = array(
'default' => t('Default'),
'primary' => t('Primary'),
'success' => t('Success'),
'info' => t('Info'),
'warning' => t('Warning'),
'danger' => t('Danger'),
);
$form['context'] = array(
'#type' => 'select',
'#title' => t('Contextual class'),
'#options' => $c_options,
'#default_value' => $this->options['context'],
'#description' => t('<a href="!docs">see Bootstrap documentation</a>', [
'!docs' => 'https://getbootstrap.com/docs/3.4/components/#panels-alternatives',
]),
);
}
}