You are here

tablesort_example.install in Examples for Developers 7

Same filename and directory in other branches
  1. 8 tablesort_example/tablesort_example.install

Install and uninstall functions for the tablesort example module.

This file contains the functions required to perform install and uninstall operations.

File

tablesort_example/tablesort_example.install
View source
<?php

/**
 * @file
 * Install and uninstall functions for the tablesort example module.
 *
 * This file contains the functions required to perform install and
 * uninstall operations.
 */

/**
 * Implements hook_install().
 *
 * @ingroup tablesort_example
 */
function tablesort_example_install() {

  // Let's fill the database with some values for sorting.
  $rows = array(
    array(
      'numbers' => 1,
      'alpha' => 'e',
      'random' => '912cv21',
    ),
    array(
      'numbers' => 2,
      'alpha' => 'a',
      'random' => '0kuykuh',
    ),
    array(
      'numbers' => 3,
      'alpha' => 'm',
      'random' => 'fuye8734h',
    ),
    array(
      'numbers' => 4,
      'alpha' => 'w',
      'random' => '80jsv772',
    ),
    array(
      'numbers' => 5,
      'alpha' => 'o',
      'random' => 'd82sf-csj',
    ),
    array(
      'numbers' => 6,
      'alpha' => 's',
      'random' => 'au832',
    ),
    array(
      'numbers' => 7,
      'alpha' => 'e',
      'random' => 't982hkv',
    ),
  );
  if (db_table_exists('tablesort_example')) {
    foreach ($rows as $row) {
      db_insert('tablesort_example')
        ->fields($row)
        ->execute();
    }
  }
}

/**
 * Implements hook_uninstall().
 *
 * It's good to clean up after ourselves
 *
 * @ingroup tablesort_example
 */
function tablesort_example_uninstall() {
  db_drop_table('tablesort_example');
}

/**
 * Implements hook_schema().
 *
 * @ingroup tablesort_example
 */
function tablesort_example_schema() {
  $schema['tablesort_example'] = array(
    'description' => 'Stores some values for sorting fun.',
    'fields' => array(
      'numbers' => array(
        'description' => 'This column simply holds numbers values',
        'type' => 'varchar',
        'length' => 2,
        'not null' => TRUE,
      ),
      'alpha' => array(
        'description' => 'This column simply holds alpha values',
        'type' => 'varchar',
        'length' => 2,
        'not null' => TRUE,
      ),
      'random' => array(
        'description' => 'This column simply holds random values',
        'type' => 'varchar',
        'length' => 12,
        'not null' => TRUE,
      ),
    ),
    'primary key' => array(
      'numbers',
    ),
  );
  return $schema;
}