tablesort_example.install

Same filename in other branches
  1. 3.x modules/tablesort_example/tablesort_example.install
  2. 7.x-1.x 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

modules/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 = [
        [
            'numbers' => 1,
            'alpha' => 'e',
            'random' => '912cv21',
        ],
        [
            'numbers' => 2,
            'alpha' => 'a',
            'random' => '0kuykuh',
        ],
        [
            'numbers' => 3,
            'alpha' => 'm',
            'random' => 'fuye8734h',
        ],
        [
            'numbers' => 4,
            'alpha' => 'w',
            'random' => '80jsv772',
        ],
        [
            'numbers' => 5,
            'alpha' => 'o',
            'random' => 'd82sf-csj',
        ],
        [
            'numbers' => 6,
            'alpha' => 's',
            'random' => 'au832',
        ],
        [
            'numbers' => 7,
            'alpha' => 'e',
            'random' => 't982hkv',
        ],
    ];
    $db_connection = \Drupal::database();
    if ($db_connection->schema()
        ->tableExists('tablesort_example')) {
        foreach ($rows as $row) {
            $db_connection->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_connection = \Drupal::database();
    $db_connection->schema()
        ->dropTable('tablesort_example');
}

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

Functions

Title Deprecated Summary
tablesort_example_install Implements hook_install().
tablesort_example_schema Implements hook_schema().
tablesort_example_uninstall Implements hook_uninstall().