block_access.install in Block Access 6
Same filename and directory in other branches
block_access module installation and upgrade code.
File
block_access.installView source
<?php
/**
* @file
* block_access module installation and upgrade code.
*/
/**
* Implementation of hook_schema().
*/
function block_access_schema() {
$schema['block_access_roles'] = array(
'description' => 'Extension of blocks_roles',
'fields' => array(
'module' => array(
'type' => 'varchar',
'length' => 64,
'not null' => TRUE,
'description' => "The block's origin module, from {blocks}.module.",
),
'delta' => array(
'type' => 'varchar',
'length' => 32,
'not null' => FALSE,
'description' => "The block's unique delta within module, from {blocks}.delta.",
),
'rid' => array(
'type' => 'int',
'unsigned' => TRUE,
'not null' => TRUE,
'description' => "The user's role ID from {users_roles}.rid.",
),
'permission' => array(
'type' => 'varchar',
'length' => 32,
'not null' => TRUE,
'description' => 'The permission being granted',
),
),
'primary key' => array(
'module',
'delta',
'rid',
'permission',
),
'indexes' => array(
'rid' => array(
'rid',
),
),
);
return $schema;
}
/**
* Implementation of hook_install().
*/
function block_access_install() {
drupal_install_schema('block_access');
}
/**
* Implementation of hook_uninstall().
*/
function block_access_uninstall() {
drupal_uninstall_schema('block_access');
}
function block_access_update_6001() {
$ret = array();
drupal_install_schema('block_access');
$ret[] = update_sql("INSERT INTO {block_access_roles} SELECT * FROM {blocks_roles} WHERE permission != ''");
$ret[] = update_sql("DELETE FROM {blocks_roles} WHERE permission != ''");
db_drop_primary_key($ret, 'blocks_roles');
db_drop_field($ret, 'blocks_roles', 'permission');
db_add_primary_key($ret, 'blocks_roles', array(
'module',
'delta',
'rid',
));
return $ret;
}
function block_access_update_6002() {
$ret = array();
$ret[] = update_sql("ALTER TABLE {block_access_roles} MODIFY delta varchar(32) NULL");
return $ret;
}
Functions
Name | Description |
---|---|
block_access_install | Implementation of hook_install(). |
block_access_schema | Implementation of hook_schema(). |
block_access_uninstall | Implementation of hook_uninstall(). |
block_access_update_6001 | |
block_access_update_6002 |