You are here

function panels_bootstrap_add_item_form in Panels Bootstrap Layout Builder 7.3

Same name and namespace in other branches
  1. 7 plugins/layouts/bootstrap/bootstrap.inc \panels_bootstrap_add_item_form()

Form to add a row, column or region to a bootstrap layout.

Parameters

<type> $form_state:

Return value

<type>

1 string reference to 'panels_bootstrap_add_item_form'
panels_ajax_bootstrap_edit_add in plugins/layouts/bootstrap/bootstrap.inc
AJAX responder to add a new row, column or region to a bootstrap layout.

File

plugins/layouts/bootstrap/bootstrap.inc, line 1418

Code

function panels_bootstrap_add_item_form($form, &$form_state) {
  $display =& $form_state['display'];
  $item =& $form_state['item'];
  $parent =& $form_state['parent'];
  $settings =& $form_state['settings'];
  $location =& $form_state['location'];
  $id =& $form_state['id'];
  switch ($item['type']) {
    case 'container':
      $form['wrapper'] = array(
        '#title' => t('Wrapper'),
        '#type' => 'textfield',
        '#default_value' => isset($item['wrapper']) ? $item['wrapper'] : 'div',
        '#description' => t('HTML element for that container'),
      );
      $form['element_id_default'] = array(
        '#type' => 'checkbox',
        '#title' => t('Use default ID'),
        '#default_value' => isset($item['element_id_default']) ? $item['element_id_default'] : 1,
        '#description' => t('Add the default ID like #panel-bootstrap-column-main-column to this container.'),
      );
      $form['element_id'] = array(
        '#title' => t('ID'),
        '#type' => 'textfield',
        '#default_value' => isset($item['id']) ? $item['id'] : '',
        '#description' => t('Define a custom IF for this element'),
        '#states' => array(
          'visible' => array(
            'input[name="element_id_default"]' => array(
              'checked' => FALSE,
            ),
          ),
        ),
      );
      $form['class'] = array(
        '#title' => t('CSS Class'),
        '#type' => 'textfield',
        '#default_value' => isset($item['class']) ? $item['class'] : '',
        '#description' => t('Enter a CSS class that will be used. This can be used to apply automatic styling from your theme, for example.'),
      );
      $form['class_default_add'] = array(
        '#type' => 'checkbox',
        '#title' => t('Add default classes'),
        '#default_value' => isset($item['class_default_add']) ? $item['class_default_add'] : 1,
        '#description' => t('Add the default classes like .row, .panels-bootstrap-row, .inside, .row-inside-first etc to this container.'),
      );
      $form['container_class_add'] = array(
        '#type' => 'checkbox',
        '#title' => t('Add container class'),
        '#default_value' => isset($item['container_class_add']) ? $item['container_class_add'] : 0,
        '#description' => t('Add class "container" to this container'),
      );
      $form['container_fluid_class_add'] = array(
        '#type' => 'checkbox',
        '#title' => t('Add container-fluid class'),
        '#default_value' => isset($item['container_fluid_class_add']) ? $item['container_fluid_class_add'] : 0,
        '#description' => t('If you use a full width layout, you may need to use the class "container-fluid" to avoid marrgin problems.'),
      );
      $form['contains'] = array(
        '#type' => 'select',
        '#title' => t('Contains'),
        '#default_value' => isset($item['contains']) ? $item['contains'] : 'container',
        '#options' => array(
          'container' => t('Container'),
          'region' => t('Regions'),
          'row' => t('Row'),
        ),
      );
      break;
    case 'row':
      $form['wrapper'] = array(
        '#title' => t('Wrapper'),
        '#type' => 'textfield',
        '#default_value' => isset($item['wrapper']) ? $item['wrapper'] : 'div',
        '#description' => t('HTML element for that row'),
      );
      $form['element_id_default'] = array(
        '#type' => 'checkbox',
        '#title' => t('Use default ID'),
        '#default_value' => isset($item['element_id_default']) ? $item['element_id_default'] : 1,
        '#description' => t('Add the default ID like #panel-bootstrap-column-main-column to this container.'),
      );
      $form['element_id'] = array(
        '#title' => t('ID'),
        '#type' => 'textfield',
        '#default_value' => isset($item['id']) ? $item['id'] : '',
        '#description' => t('Define a custom IF for this element'),
        '#states' => array(
          'visible' => array(
            'input[name="element_id_default"]' => array(
              'checked' => FALSE,
            ),
          ),
        ),
      );
      $form['class'] = array(
        '#title' => t('CSS Class'),
        '#type' => 'textfield',
        '#default_value' => isset($item['class']) ? $item['class'] : '',
        '#description' => t('Enter a CSS class that will be used. This can be used to apply automatic styling from your theme, for example.'),
      );
      $form['class_default_add'] = array(
        '#type' => 'checkbox',
        '#title' => t('Add default classes'),
        '#default_value' => isset($item['class_default_add']) ? $item['class_default_add'] : 1,
        '#description' => t('Add the default classes like .row, .panels-bootstrap-row, .inside, .row-inside-first etc to this container.'),
      );
      break;
    case 'column':
      $form['wrapper'] = array(
        '#title' => t('Wrapper'),
        '#type' => 'textfield',
        '#default_value' => isset($item['wrapper']) ? $item['wrapper'] : 'div',
        '#description' => t('HTML element for that column'),
      );
      $form['element_id_default'] = array(
        '#type' => 'checkbox',
        '#title' => t('Use default ID'),
        '#default_value' => isset($item['element_id_default']) ? $item['element_id_default'] : 1,
        '#description' => t('Add the default ID like #panel-bootstrap-column-main-column to this container.'),
      );
      $form['element_id'] = array(
        '#title' => t('ID'),
        '#type' => 'textfield',
        '#default_value' => isset($item['id']) ? $item['id'] : '',
        '#description' => t('Define a custom IF for this element'),
        '#states' => array(
          'visible' => array(
            'input[name="element_id_default"]' => array(
              'checked' => FALSE,
            ),
          ),
        ),
      );
      $form['class'] = array(
        '#title' => t('CSS Class'),
        '#type' => 'textfield',
        '#default_value' => isset($item['class']) ? $item['class'] : '',
        '#description' => t('Enter a CSS class that will be used. This can be used to apply automatic styling from your theme, for example.'),
      );
      $form['class_default_add'] = array(
        '#type' => 'checkbox',
        '#title' => t('Add default classes'),
        '#default_value' => isset($item['class_default_add']) ? $item['class_default_add'] : 1,
        '#description' => t('Add the default classes like .row, .panels-bootstrap-row, .inside, .row-inside-first etc to this container.'),
      );
      $form['contains'] = array(
        '#type' => 'select',
        '#title' => t('Contains'),
        '#default_value' => isset($item['contains']) ? $item['contains'] : 'region',
        '#options' => array(
          'region' => t('Regions'),
          'row' => t('Row'),
        ),
      );
      break;
    case 'region':
      $form['title'] = array(
        '#title' => t('Region title'),
        '#type' => 'textfield',
        '#default_value' => $item['title'],
        '#required' => TRUE,
      );
      $form['wrapper'] = array(
        '#title' => t('Wrapper'),
        '#type' => 'textfield',
        '#default_value' => isset($item['wrapper']) ? $item['wrapper'] : 'div',
        '#description' => t('HTML element for that region'),
      );
      $form['element_id_default'] = array(
        '#type' => 'checkbox',
        '#title' => t('Use default ID'),
        '#default_value' => isset($item['element_id_default']) ? $item['element_id_default'] : 1,
        '#description' => t('Add the default ID like #panel-bootstrap-column-main-column to this container.'),
      );
      $form['element_id'] = array(
        '#title' => t('ID'),
        '#type' => 'textfield',
        '#default_value' => isset($item['id']) ? $item['id'] : '',
        '#description' => t('Define a custom IF for this element'),
        '#states' => array(
          'visible' => array(
            'input[name="element_id_default"]' => array(
              'checked' => FALSE,
            ),
          ),
        ),
      );
      $form['class'] = array(
        '#title' => t('CSS Class'),
        '#type' => 'textfield',
        '#default_value' => isset($item['class']) ? $item['class'] : '',
        '#description' => t('Enter a CSS class that will be used. This can be used to apply automatic styling from your theme, for example.'),
      );
      $form['class_default_add'] = array(
        '#type' => 'checkbox',
        '#title' => t('Add default classes'),
        '#default_value' => isset($item['class_default_add']) ? $item['class_default_add'] : 1,
        '#description' => t('Add the default classes like .row, .panels-bootstrap-row, .inside, .row-inside-first etc to this container.'),
      );
      $form['container_class_add'] = array(
        '#type' => 'checkbox',
        '#title' => t('Add container class'),
        '#default_value' => isset($item['container_class_add']) ? $item['container_class_add'] : 0,
        '#description' => t('Add class "container" to this container'),
      );
      $form['container_fluid_class_add'] = array(
        '#type' => 'checkbox',
        '#title' => t('Add container-fluid class'),
        '#default_value' => isset($item['container_fluid_class_add']) ? $item['container_fluid_class_add'] : 0,
        '#description' => t('If you use a full width layout, you may need to use the class "container-fluid" to avoid marrgin problems.'),
      );
      break;
    default:
      break;
  }
  $form['save'] = array(
    '#type' => 'submit',
    '#value' => t('Save'),
  );
  return $form;
}