function panels_views_plugin_row_fields::options_form in Panels 7.3
Same name and namespace in other branches
- 6.3 plugins/views/panels_views_plugin_row_fields.inc \panels_views_plugin_row_fields::options_form()
Provide a form for setting options.
Overrides views_plugin_row_fields::options_form
File
- plugins/
views/ panels_views_plugin_row_fields.inc, line 28 - Contains the base row style plugin.
Class
- panels_views_plugin_row_fields
- The basic 'fields' row plugin.
Code
function options_form(&$form, &$form_state) {
parent::options_form($form, $form_state);
ctools_include('plugins', 'panels');
$layouts = panels_get_layouts();
$options = array();
foreach ($layouts as $name => $layout) {
if (empty($layout['builder'])) {
$options[$name] = $layout['title'];
}
if ($name == $this->options['layout']) {
$current_layout = $layout;
}
}
$form['layout'] = array(
'#prefix' => '<div class="container-inline">',
'#type' => 'select',
'#options' => $options,
'#title' => t('Panel layout'),
'#default_value' => $this->options['layout'],
);
$form['change'] = array(
'#type' => 'submit',
'#value' => t('Change'),
'#submit' => array(
'panels_change_layout_button',
),
'#suffix' => '</div>',
);
if (!empty($current_layout)) {
$fields = $this->display->handler
->get_field_labels();
$regions = panels_get_regions($current_layout, panels_new_display());
foreach ($fields as $id => $title) {
$form['regions'][$id] = array(
'#type' => 'select',
'#title' => $title,
'#options' => $regions,
);
if (!empty($this->options['regions'][$id]) && !empty($regions[$this->options['regions'][$id]])) {
$form['regions'][$id]['#default_value'] = $this->options['regions'][$id];
}
}
}
}