You are here

function availability_calendars_install in Availability Calendars 7.2

Same name and namespace in other branches
  1. 5 availability_calendars.install \availability_calendars_install()
  2. 6.2 availability_calendars.install \availability_calendars_install()
  3. 6 availability_calendars.install \availability_calendars_install()

Implements hook_install().

See also

http://api.drupal.org/api/drupal/modules--system--system.api.php/functio...

File

./availability_calendars.install, line 124
Install, update and uninstall functions for the Availability Calendars module.

Code

function availability_calendars_install() {

  // Fill schema: add a default (starter, example) set of states to the database
  $states = array(
    array(
      'class' => 'calav',
      'label' => 'Available',
      'weight' => 1,
      'is_available' => 1,
    ),
    array(
      'class' => 'calna',
      'label' => 'Fully booked',
      'weight' => 2,
      'is_available' => 0,
    ),
    array(
      'class' => 'calopt',
      'label' => 'Provisionally booked',
      'weight' => 3,
      'is_available' => 0,
    ),
  );
  foreach ($states as $state) {
    db_insert('availability_calendars_states')
      ->fields($state)
      ->execute();
  }
  variable_set('availability_calendars_styles_generate', 1);
  $styles = array(
    'table' => array(
      'font-size' => 'smaller',
      'color' => '#000000',
      'background-color' => '',
      'border-width' => '1px',
      'border-color' => '#000000',
    ),
    'caption' => array(
      'font-weight' => 'bold',
      'font-style' => 'inherit',
      'font-size' => 'smaller',
    ),
    'header' => array(
      'height' => '',
      'font-weight' => 'bold',
      'font-style' => 'inherit',
      'font-size' => 'inherit',
      'text-align' => 'center',
    ),
    'week_notes' => array(
      'width' => '90px',
    ),
    'days' => array(
      'width' => '28px',
      'height' => '28px',
      'text-align' => 'center',
      'vertical-align' => 'middle',
    ),
    'states' => array(
      'split-day' => '/',
    ),
  );

  // Fill default states
  $styles['states']['calav'] = '#90ee90';
  $styles['states']['calna'] = '#ffb6c1';
  $styles['states']['calopt'] = '#ffffe0';
  variable_set('availability_calendars_styles', $styles);
  $link = l(st('Availability Calendars') . ' ' . st('Styling'), 'admin/config/content/availability-calendars/styling');
  drupal_set_message(st("Please visit the '!link' page to generate a CSS file.", array(
    '!link' => $link,
  )), 'warning');
}