You are here

follow.install in Follow 7

Same filename and directory in other branches
  1. 8.2 follow.install
  2. 5 follow.install
  3. 6 follow.install
  4. 7.2 follow.install

Follow module's install and uninstall code.

File

follow.install
View source
<?php

/**
 * @file
 *   Follow module's install and uninstall code.
 */

/**
 * Implementation of hook_install().
 */
function follow_install() {

  // Add a default link to this site's node RSS feed.
  db_insert('follow_links')
    ->fields(array(
    'name' => 'this-site',
    'path' => 'rss.xml',
    'options' => 'a:0:{}',
    'uid' => 0,
    'weight' => 0,
  ))
    ->execute();
}

/**
 * Implementation of hook_schema().
 */
function follow_schema() {
  $schema['follow_links'] = array(
    'description' => 'Stores sitewide and user follow links.',
    'fields' => array(
      'lid' => array(
        'type' => 'serial',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'description' => 'Unique identifier for the {follow_links}.',
      ),
      'name' => array(
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
        'description' => "The machine name of the {follow_links}.",
      ),
      'uid' => array(
        'type' => 'int',
        'not null' => TRUE,
        'default' => 0,
        'description' => "User's {users} uid.  Sitewide {follow_links} use uid 0",
      ),
      'path' => array(
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
        'description' => 'The Drupal path or extenal URL the {follow_links} should point to.',
      ),
      'options' => array(
        'description' => 'A serialized array of options to be passed to the url() or l() function, such as a query string or HTML attributes.',
        'type' => 'text',
        'translatable' => TRUE,
        'serialize' => TRUE,
      ),
      'title' => array(
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
        'description' => 'The human readable name for the link.',
      ),
      'weight' => array(
        'type' => 'int',
        'not null' => TRUE,
        'default' => 0,
        'size' => 'tiny',
        'description' => 'The weight of this {follow_links}.',
      ),
    ),
    'primary key' => array(
      'lid',
    ),
    'unique keys' => array(
      'uid_name' => array(
        'uid',
        'name',
      ),
    ),
  );
  return $schema;
}

/**
 * Implementation of hook_uninstall().
 */
function follow_uninstall() {
  variable_del('follow_user_block_title');
  variable_del('follow_site_block_title');
  variable_del('follow_site_block_user');
  variable_del('follow_icon_style');
}

/**
 * Implementation of hook_update_last_removed().
 */
function follow_update_last_removed() {

  // We need to ensure that all D6 users have upgraded to the latest version of
  // Follow before upgrading to D7.
  return 6003;
}

/**
 * Placeholder to ensure the correct schema version.
 */
function follow_update_7003() {
}

Functions

Namesort descending Description
follow_install Implementation of hook_install().
follow_schema Implementation of hook_schema().
follow_uninstall Implementation of hook_uninstall().
follow_update_7003 Placeholder to ensure the correct schema version.
follow_update_last_removed Implementation of hook_update_last_removed().