<?php

/**
 * Implementation of hook_install().
 */
function trigger_install() {
  // Create tables.
  drupal_install_schema('trigger');

  // Do initial synchronization of actions in code and the database.
  actions_synchronize(actions_list());
}

/**
 * Implementation of hook_uninstall().
 */
function trigger_uninstall() {
  // Remove tables.
  drupal_uninstall_schema('trigger');
}

/**
 * Implementation of hook_schema().
 */
function trigger_schema() {
  $schema['trigger_assignments'] = array(
    'description' => 'Maps trigger to hook and operation assignments from trigger.module.',
    'fields' => array(
      'hook' => array(
        'type' => 'varchar',
        'length' => 32,
        'not null' => TRUE,
        'default' => '',
        'description' => 'Primary Key: The name of the internal Drupal hook upon which an action is firing; for example, nodeapi.',
      ),
      'op' => array(
        'type' => 'varchar',
        'length' => 32,
        'not null' => TRUE,
        'default' => '',
        'description' => 'Primary Key: The specific operation of the hook upon which an action is firing: for example, presave.',
      ),
      'aid' => array(
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
        'description' => "Primary Key: Action's {actions}.aid.",
      ),
      'weight' => array(
        'type' => 'int',
        'not null' => TRUE,
        'default' => 0,
        'description' => 'The weight of the trigger assignment in relation to other triggers.',
      ),
    ),
    'primary key' => array('hook', 'op', 'aid'),
  );
  return $schema;
}


