You are here

function user_relationships_api_schema in User Relationships 6

Implementation of hook_schema().

File

user_relationships_api/user_relationships_api.install, line 11
User Relationships API Module installation file.

Code

function user_relationships_api_schema() {
  $schema['user_relationships'] = array(
    'fields' => array(
      'rid' => array(
        'type' => 'serial',
        'not null' => TRUE,
      ),
      'requester_id' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'requestee_id' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'rtid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'approved' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
        'size' => 'tiny',
      ),
      'created_at' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'updated_at' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'flags' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
    ),
    'primary key' => array(
      'requester_id',
      'requestee_id',
      'rtid',
    ),
    'indexes' => array(
      'requester_id' => array(
        'requester_id',
      ),
      'requestee_id' => array(
        'requestee_id',
      ),
      'rtid' => array(
        'rtid',
      ),
      'rid' => array(
        'rid',
      ),
    ),
  );
  $schema['user_relationship_types'] = array(
    'fields' => array(
      'rtid' => array(
        'type' => 'serial',
        'unsigned' => TRUE,
        'not null' => TRUE,
      ),
      'name' => array(
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
      ),
      'plural_name' => array(
        'type' => 'varchar',
        'length' => 255,
        'not null' => TRUE,
        'default' => '',
      ),
      'is_oneway' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
        'size' => 'tiny',
      ),
      'is_reciprocal' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
        'size' => 'tiny',
      ),
      'requires_approval' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
        'size' => 'tiny',
      ),
      'expires_val' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
    ),
    'unique keys' => array(
      'name' => array(
        'name',
      ),
    ),
    'primary key' => array(
      'rtid',
    ),
  );
  $schema['user_relationship_type_roles'] = array(
    'fields' => array(
      'rtid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'rid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
    ),
    'primary key' => array(
      'rtid',
      'rid',
    ),
    'indexes' => array(
      'rtid' => array(
        'rtid',
      ),
    ),
  );
  $schema['user_relationship_type_roles_receive'] = array(
    'fields' => array(
      'rtid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
      'rid' => array(
        'type' => 'int',
        'unsigned' => TRUE,
        'not null' => TRUE,
        'default' => 0,
      ),
    ),
    'primary key' => array(
      'rtid',
      'rid',
    ),
    'indexes' => array(
      'rtid' => array(
        'rtid',
      ),
    ),
  );
  return $schema;
}