You are here

enterprise_ds_layouts.module in Enterprise Base 7.3

File

enterprise_ds_layouts/enterprise_ds_layouts.module
View source
<?php

// Need to convert this module to bootstrap 3

/**
 * Implements hook_ds_layout_info().
 */
function enterprise_ds_layouts_ds_layout_info() {
  $layout_path = drupal_get_path('module', 'enterprise_ds_layouts') . '/ds_layouts';
  $layouts = array(
    'bootstrap_1col_stacked' => array(
      'label' => t('One column stacked'),
      'module' => 'bootstrap',
      'path' => $layout_path . '/bootstrap_1col_stacked',
      'regions' => array(
        'header' => t('Header'),
        'sticky' => t('Sticky Header'),
        'middle' => t('Content'),
        'footer' => t('Footer'),
      ),
    ),
    'bootstrap_1col_fluid_stacked' => array(
      'label' => t('One column fluid stacked'),
      'module' => 'bootstrap',
      'path' => $layout_path . '/bootstrap_1col_fluid_stacked',
      'regions' => array(
        'header' => t('Header'),
        'middle' => t('Content'),
        'footer' => t('Footer'),
      ),
      'image' => TRUE,
    ),
    'bootstrap_2col_fluid_stacked' => array(
      'label' => t('Two column fluid stacked'),
      'module' => 'bootstrap',
      'path' => $layout_path . '/bootstrap_2col_fluid_stacked',
      'regions' => array(
        'header' => t('Header'),
        'left' => t('Left'),
        'right' => t('Right'),
        'footer' => t('Footer'),
      ),
      'image' => TRUE,
    ),
  );
  return $layouts;
}

/**
 * Implements hook_ds_classes_alter().
 * Provide the necessary classes for blog types.
 */
function enterprise_ds_layouts_ds_classes_alter(&$classes, $name) {
  if ('ds_classes_regions' === $name) {
    $classes['no-grid'] = t('No Span');
    $classes['span1'] = t('Span 1');
    $classes['span2'] = t('Span 2');
    $classes['span3'] = t('Span 3');
    $classes['span4'] = t('Span 4');
    $classes['span5'] = t('Span 5');
    $classes['span6'] = t('Span 6');
    $classes['span7'] = t('Span 7');
    $classes['span8'] = t('Span 8');
    $classes['span9'] = t('Span 9');
    $classes['span10'] = t('Span 10');
    $classes['span11'] = t('Span 11');
    $classes['span12'] = t('Span 12');
    $classes['visible-phone'] = t('Phone: visible');
    $classes['visible-tablet'] = t('Tablet: visible');
    $classes['visible-desktop'] = t('Desktop: visible');
    $classes['hidden-phone'] = t('Phone: hidden');
    $classes['hidden-tablet'] = t('Tablet: hidden');
    $classes['hidden-desktop'] = t('Desktop: hidden');
    $classes['text-align-left'] = t('Text Align: Left');
    $classes['text-align-center'] = t('Text Align: Center');
    $classes['text-align-right'] = t('Text Align: Right');
    $classes['text-align-justify'] = t('Text Align: Justify');
    $classes['margin-top'] = t('Margin: Top');
    $classes['margin-right'] = t('Margin: Right');
    $classes['margin-bottom'] = t('Margin: Bottom');
    $classes['margin-left'] = t('Margin: Left');
    $classes['no-margin-top'] = t('No Margin: Top');
    $classes['no-margin-right'] = t('No Margin: Right');
    $classes['no-margin-bottom'] = t('No Margin: Bottom');
    $classes['no-margin-left'] = t('No Margin: Left');
    $classes['pull-left'] = t('Float Left');
    $classes['pull-right'] = t('Float Right');
    $classes['no-wrap'] = t('No Wrap (Overflow)');
  }
}

/**
 * Returns the correct span class for a region
 */
function enterprise_ds_layouts_span_columns(&$classes, $columns = 1) {
  if (is_string($classes)) {
    $classes = explode(' ', $classes);
  }
  $no_span = FALSE;
  foreach ($classes as $key => $class) {
    if (strpos($class, 'span') === 0 || strpos($class, 'no-grid') === 0) {
      $classes = implode(' ', $classes);
      return;
    }
  }
  switch ($columns) {
    case 1:
      $classes[] = 'span12';
      break;
    case 2:
      $classes[] = 'span6';
      break;
    case 3:
      $classes[] = 'span4';
      break;
    case 4:
      $classes[] = 'span3';
      break;
  }
  $classes = implode(' ', $classes);
}
function enterprise_ds_layouts_span_column_replace(&$classes, $columns = 1) {
  $classes_array = $classes;
  if (is_string($classes_array)) {
    $classes_array = explode(' ', $classes);
  }
  $classes_array = array_filter($classes_array);
  foreach ($classes_array as $key => &$class) {
    if (strpos($class, 'span') === 0) {
      unset($classes_array[$key]);
      enterprise_ds_layouts_span_columns($class, $columns);
    }
  }
  $classes = implode(' ', $classes_array);
}

Functions

Namesort descending Description
enterprise_ds_layouts_ds_classes_alter Implements hook_ds_classes_alter(). Provide the necessary classes for blog types.
enterprise_ds_layouts_ds_layout_info Implements hook_ds_layout_info().
enterprise_ds_layouts_span_columns Returns the correct span class for a region
enterprise_ds_layouts_span_column_replace